Comment

PHP ফাইলস অর্গানাইজিং (Organizing PHP files)

PHP ভেরিয়েবল ভেরিয়েবলস (Variable variables)

Estimated reading: 2 minutes 8 views Contributors

সারাংশ: এই টিউটোরিয়ালে,আপনি PHP variable variables এবং কীভাবে সেগুলি কার্যকরভাবে apply করবেন তা শিখবেন।

PHP ভেরিয়েবল ভেরিয়েবলস -এর পরিচিতি ;-

সাধারণত, আপনার পূর্ব নির্ধারীত নামের সাথে একটি  variable থাকে। উদাহরণস্বরূপ, নিম্নলিখিত $title নামের একটি ভেরিয়েবলকে ডিফাইন করে যা একটি স্ট্রিং ধারণ করে।

<?php


$title = 'PHP variable variables';

PHP-তে, একটি ভেরিয়েবলের নাম অন্য ভেরিয়েবলের ভেল্যু থেকে নেওয়া যেতে পারে।

উদাহরণ স্বরূপ:

<?php

$my_var= 'title';
$$my_var = 'PHP variable variables';

echo $title;

আউটপুট:

PHP variable variables

কিভাবে এটা কাজ করে.

  • প্রথমে, একটি ভেরিয়েবল   $my_var  সংজ্ঞায়িত করুন যা স্ট্রিং   'title' ধারণ করে।
  • দ্বিতীয়ত,  'PHP variable variables' স্ট্রিং ধারণ করে এমন একটি ভেরিয়েবল ভেরিয়েবলস ডিফাইন করুন। মনে রাখবেন যে আমরা একটির পরিবর্তে ডাবল $ সাইন ব্যবহার করি। এটি করার মাধ্যমে, আমরা প্রযুক্তিগতভাবে $title নামের আরেকটি ভেরিয়েবল তৈরি করি
  • তৃতীয়ত, $title ভেরিয়েবলের ভেল্যু  প্রদর্শন করুন।

PHP ভেরিয়েবল ভেরিয়েবলস এর উদাহরণ ;-

ধরুন, আপনার কাছে নিম্নলিখিত ফোল্ডার এবং ফাইল রয়েছে:

├── inc
|  └── home.php
└── index.php

index.php-এ, আপনি নিম্নলিখিত view() ফাংশন ডিফাইন করেন যা $file প্যারামিটার দ্বারা নির্দিষ্ট করা ফাইল থেকে কোড লোড করে:

<?php


function view(string $file): void
{
    require __DIR__ . $file;
}

$file দ্বারা নির্দিষ্ট স্ক্রিপ্টে ডেটা পাস করতে, আপনি এইভাবে view() ফাংশনে একটি দ্বিতীয় প্যারামিটার যক্ত করতে পারেন এইভাবে:

<?php

function view(string $file, array $data): void
{
    require __DIR__ . $file;
}

$file স্ক্রিপ্ট থেকে, আপনি $data অ্যারের উপাদান অ্যাক্সেস করতে পারেন।

নিম্নলিখিত উদাহরণ home.php স্ক্রিপ্ট থেকে কোড লোড করতে view() ফাংশন ব্যবহার করে এবং এতে দুটি উপাদানের একটি অ্যারে পাস করে:

<?php

function view(string $file, array $data): void
{
    require __DIR__ . '/' .  $file;
}


view(
    'inc/home.php',
    [
        'title' => 'Home',
        'heading' => 'Welcome to my homepage'
    ]
);

home.php-এ, আপনি এইভাবে $data অ্যারে অ্যাক্সেস করতে পারেন:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title><?php echo $data['title']  ?>/title>
</head>

<body>
    <h1><?php echo $data['heading'] ?></h1>

</body>

</html>

যখন আপনি index.php ফাইলটি লঞ্চ করেন, তখন এটি home.php ফাইল থেকে কোড লোড করে এবং টাইটল এবং হেডিং প্রদর্শন করে। যাইহোক, আপনি যদি এইভাবে home.php-এ $data অ্যারের উপাদান অ্যাক্সেস করতে পারেন তবে এটি দুর্দান্ত হবে:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title><?php echo $title ?>/title>
</head>

<body>
    <h1><?php echo $heading ?></h1>

</body>

</html>

এটি করার জন্য, আপনাকে ভেরিয়েবল ভেরিয়েবলস ব্যবহার করে অ্যারে উপাদান ভেরিয়েবলে রূপান্তর করতে হবে। নতুন view() ফাংশন দেখতে এরকম হবে:

function view(string $file, array $data): void
{
    foreach ($data as $key => $value) {
        $$key = $value;
    }

    require __DIR__ . '/' .  $file;
}

view() ফাংশনে, আমরা $data অ্যারের উপাদানের উপর পুনরাবৃত্তি করি এবং ভেরিয়েবল তৈরি করি, যার নাম হল $data, অ্যারের কী এবং ভেল্যু হল $data অ্যারের ভেল্যু :

foreach ($data as $key => $value) {
       $$key = $value;
}

ভেরিয়েবল ভেরিয়েবলস এখন $file প্যারামিটার দ্বারা নির্দিষ্ট করা স্ক্রিপ্টে পাওয়া যায়। উদাহরণস্বরূপ, আপনি যদি home.php ফাইল থেকে কোডটি লোড করার জন্য view() ফাংশনটি নিম্নরূপ কল করেন:

view(
    'inc/home.php',
    [
        'title' => 'Home',
        'heading' => 'Welcome to my homepage'
    ]
);

home.php ফাইলে, আপনি $title এবং $heading ভেরিয়েবল অ্যাক্সেস করতে পারেন:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title><?php echo $title ?>/title>
</head>

<body>
    <h1><?php echo $heading ?></h1>

</body>

</html>

সারসংক্ষেপ;-

  • php ভেরিয়েবল ভেরিয়েবলস হল ভেরিয়েবল  যাদের নাম ডাইনামিক্যালি সেট করা হয়।

Leave a Comment

Share this Doc

PHP ভেরিয়েবল ভেরিয়েবলস (Variable variables)

Or copy link

CONTENTS

Subscribe

×
Cancel