কোনও ভেরিয়েবলের মধ্যে থাকা স্ট্রিং থেকে কোনও ফাংশন কীভাবে কল করবেন?


288

আমার একটি ফাংশন কল করতে সক্ষম হওয়া দরকার, তবে ফাংশনটির নামটি একটি ভেরিয়েবলে সংরক্ষণ করা যায়, এটি কি সম্ভব? উদাহরণ:

ফাংশন ফু ()
{
  // কোড এখানে
}

ফাংশন বার ()
{
  // কোড এখানে
}

$ ফাংশননেম = "ফু";
// $ ফাংশননেম কী তার ভিত্তিতে আমাকে ফাংশনটি কল করতে হবে

উত্তর:


464

85
আপনার যদি কোনও কোনও বস্তুর ক্রিয়াকলাপের কল করতে হয় যার নাম একটি ভেরিয়েবলে রয়েছে এটি করুন: কল_উজার_ফুনক (অ্যারে ($জেজ, $
ফানক

1
আপনি ক্লাস এবং পদ্ধতি নিয়ে কাজ করে থাকলে নীচে আমার উত্তরটিও দেখুন। আমি যা পেয়েছি তা আশা করিনি।
ক্রিস কে

ফাংশনটি সংজ্ঞায়িত না করা হলে আমি কীভাবে ফাংশন সংজ্ঞা ত্রুটি বাতিল করতে পারি? ($ ফাংশননাম) কি যথেষ্ট?
সৈয়দবাকআর

14
@ গুলি: আপনার is_callableফাংশনটি ব্যবহার করা উচিত । এটি ভেরিয়েবেলে এমন কোনও কিছু রয়েছে যা ফাংশন হিসাবে ডাকা যেতে পারে কিনা তা
খতিয়ে দেখবে (

6
@ পেসারিয়র: অ্যারের প্রথম উপাদান হিসাবে শ্রেণীর নাম সরবরাহ করুন:call_user_func(array('ClassName', 'method'), $args)
নিটল

121

আমার প্রিয় সংস্করণটি হ'ল ইনলাইন সংস্করণ:

${"variableName"} = 12;

$className->{"propertyName"};
$className->{"methodName"}();

StaticClass::${"propertyName"};
StaticClass::{"methodName"}();

আপনি বন্ধনীগুলির ভিতরেও ভেরিয়েবল বা এক্সপ্রেশন রাখতে পারেন!


1
@মারসিওআলমদা: এই পদ্ধতিতে অন্যের উত্তর সম্পাদনা করার পরিবর্তে একটি মন্তব্য পোস্ট করুন; এটি বিভ্রান্তি যুক্ত করেছে - এটি [
উত্সাহীদের

4
ঠিক আছে @ ক্রাইগার লাইন 2 {"functionName"}();আইনী নয় এবং একটি সিনট্যাক্স ত্রুটি নিক্ষেপ করবে।
মার্সিও

4
আপনাকে বলছি, জবাবের জন্য, এটি প্রকৃতপক্ষে পিএইচপি 5.4-তে একটি ত্রুটি ছুঁড়েছে, যাতে সিনট্যাক্স কেবলমাত্র অবজেক্ট পদ্ধতিতে কাজ করে। পোস্ট সম্পাদনা।
লাজোস মেসারোস


17

ইতিমধ্যে উল্লিখিত হিসাবে, সম্ভবত সবচেয়ে নিরাপদ পদ্ধতিটি দিয়ে এটি অর্জনের কয়েকটি উপায় রয়েছে call_user_func()বা যদি আপনাকে অবশ্যই প্রয়োজন হয় তবে আপনিও এই পথে যেতে পারেন $function_name()। এই উভয় পদ্ধতি ব্যবহার করে তর্কগুলি পাস করা সম্ভব

$function_name = 'foobar';

$function_name(arg1, arg2);

call_user_func_array($function_name, array(arg1, arg2));

আপনি যে ফাংশনটি কল করছেন সেটি যদি কোনও অবজেক্টের হয় তবে আপনি এখনও এর মধ্যে দুটি ব্যবহার করতে পারেন

$object->$function_name(arg1, arg2);

call_user_func_array(array($object, $function_name), array(arg1, arg2));

তবে আপনি যদি $function_name()পদ্ধতিটি ব্যবহার করতে যাচ্ছেন তবে নামটি কোনওভাবেই গতিশীল থাকলে ফাংশনের অস্তিত্বের জন্য পরীক্ষা করা ভাল ধারণা হতে পারে

if(method_exists($object, $function_name))
{
    $object->$function_name(arg1, arg2);
}

12

যদি গুগলের মাধ্যমে অন্য কাউকে এখানে আনা হয় কারণ তারা শ্রেণীর মধ্যে কোনও পদ্ধতির জন্য একটি ভেরিয়েবল ব্যবহার করার চেষ্টা করছিল, নীচে একটি কোড নমুনা যা আসলে কাজ করবে। উপরের কেউই আমার পরিস্থিতির জন্য কাজ করেনি। কী পার্থক্য নেই &এর ঘোষণায় $c = & new...এবং &$cপাস হচ্ছে call_user_func

আমার নির্দিষ্ট ক্ষেত্রেটি হ'ল রঙ এবং দুটি সদস্য পদ্ধতি lighten()এবং darken()সিএসক্লোর.এফপি ক্লাস থেকে কারও কোড প্রয়োগ করার সময় । যে কারণেই হোক না কেন, আমি একই কোডটি যুক্তি দিয়ে বেছে নেওয়ার চেয়ে হালকা কল করতে বা অন্ধকার করতে সক্ষম হতে চেয়েছিলাম। এটি যদি কেবল অন্যথায় ব্যবহার না করে বা এই পদ্ধতিতে কলিং কোড পরিবর্তন না করে তবে আমার অনড়তার ফলাফল হতে পারে।

$lightdark="lighten"; // or optionally can be darken
$color="fcc";   // a hex color
$percent=0.15;  
include_once("csscolor.php");
$c = & new CSS_Color($color);
$rtn=call_user_func( array(&$c,$lightdark),$color,$percent);

নোট করুন যে কিছু চেষ্টা করেও $c->{...}কাজ হয়নি। পিএইচপি.এন.পির পৃষ্ঠার নীচে পাঠকের-অবদানযুক্ত সামগ্রীটি ব্যবহার করার পরে call_user_func, আমি উপরেরটি একসাথে টুকরো টুকরো করতে সক্ষম হয়েছি। এছাড়াও, নোট $paramsহিসাবে আমার জন্য কাজ করে না তা নোট করুন:

// This doesn't work:
$params=Array($color,$percent);
$rtn=call_user_func( array(&$c,$lightdark),$params);

উপরের এই প্রয়াসটি ২ য় আর্গুমেন্ট (শতাংশ) প্রত্যাশা পদ্ধতি সম্পর্কে সতর্কতা দেবে।


"$ সি = এবং নতুন সিএসএস_কাল" কী করবে? আমি অ্যাম্প (&) সম্পর্কে বলছি। এটি কি পরিবর্তন করে?
ড্যানন

@ উদ্যান এবং "ঠিকানা" বা "রেফারেন্স" অপারেটর। আমি ক্লাস সিএসএস_ক্লোরের একটি নতুন অবজেক্টকে উস্কে দিচ্ছি এবং তারপরে তার রেফারেন্স (ওরফে ঠিকানা) $ c এ নির্ধারণ করছি। আমি পুনরাবৃত্তি কোডকে ঘৃণা করি, তাই আমি প্রায়শই পরিবর্তনশীল ভেরিয়েবলের নাম ব্যবহার করি।
ক্রিস কে

1
আমি বুঝতে পারছি না। বস্তুগুলি যাইহোক সর্বত্র রেফারেন্স দিয়ে যায় না? আমি বলতে চাইছি, আপনি যদি কোনও ফাংশনে একটি $ সি পাস করেন এবং এটি পরিবর্তন করেন তবে আসল অবজেক্টটিও প্রভাবিত হবে, তাই না? আপনি এটি ব্যবহার করেছেন কিনা এবং তা নয়, আমি ঠিক আছি?
ড্যানন

আমি প্রতীকগুলির বিভিন্ন সংমিশ্রণ চেষ্টা করেছি এবং শুধুমাত্র php.org- এ ব্যবহারকারীর মন্তব্যগুলি পড়ার সময় আমি ওয়ার্কিং কোড পেতে সক্ষম হয়েছি। আপনার পিএইচপি এর আচরণের জন্য দায়ী লোকদের সাথে আলোচনা শুরু করতে হবে।
ক্রিস কে

আপনি যে ভুল উদাহরণটি পড়েছেন তার দ্বিতীয় বারের জন্য, আপনি কল_উজার_ফানক_আরে খুঁজছেন
তোফানডেল

12

কয়েক বছর দেরি হয়ে গেছে, তবে এটি এখনই সেরা পদ্ধতি ho

$x = (new ReflectionFunction("foo"))->getClosure();
$x();

3
আমার জন্য ওওপিতে যাওয়ার উপায়, তবে আমি এটিকে একটি +1 দিয়েছি, যেহেতু কেউ এখনও প্রতিচ্ছবি শ্রেণীর উল্লেখ করেনি।
লাজোস মেসারোস

এই উত্তরটি বুঝতে পারছি না। ঠিক কোন সমস্যাটি সমাধান হচ্ছে?
ডেভিড স্পেক্টর

9

সম্পূর্ণতার জন্য, আপনি ইওল () ব্যবহার করতে পারেন :

$functionName = "foo()";
eval($functionName);

তবে, call_user_func()সঠিক উপায়।


8
এটি লক্ষ করা উচিত যে eval () একই আচরণের অনুমতি দেবে তবে এটি কোনও পিএইচপি কোড কার্যকর করতে অনুমতি দেবে। সুতরাং ভেরিয়েবলটি সিস্টেম হাইজ্যাক করতে ব্যবহৃত হতে পারে। কল_উজার_ফানস () এই জাতীয় সুরক্ষা সমস্যা নিয়ে আসে না।
জন

4
evalএই প্রশ্নের সমাধান নয়।
অ্যাঙ্কার

1
দয়া করে এটি করবেন না কারণ কোনও আক্রমণকারী আপনার সার্ভারটি পুরোপুরি মুছতে পারে।
andreszs

9

সমাধান: পিএইচপি 7 ব্যবহার করুন

দ্রষ্টব্য: সংক্ষিপ্ত সংস্করণটির জন্য, উত্তরের শেষে টিএল; ডিআর দেখুন।

পুরানো পদ্ধতি

আপডেট : এখানে বর্ণিত পুরানো একটি পদ্ধতি মুছে ফেলা হয়েছে। অন্যান্য পদ্ধতির ব্যাখ্যার জন্য অন্যান্য উত্তরগুলি দেখুন, এটি এখানে আচ্ছাদিত নয়। যাইহোক, যদি এই উত্তরটি আপনাকে সহায়তা না করে তবে আপনার জিনিসগুলি আপগ্রেড করা উচিত। পিএইচপি 5.6 সমর্থন জানুয়ারী 2019 এ শেষ হয়েছে (এখন পর্যন্ত পিএইচপি 7.0 এবং 7.1 সমর্থন করা হচ্ছে না)। আরও তথ্যের জন্য সমর্থিত সংস্করণগুলি দেখুন ।

অন্যরা যেমন উল্লেখ করেছে, পিএইচপি 5 তে (এবং পিএইচপি 7 এর মতো নতুন সংস্করণগুলিতে) আমরা ফাংশন নাম, ব্যবহার call_user_func()এবং call_user_func_array()(যা ব্যক্তিগতভাবে আমি সেই ফাংশনগুলিকে ঘৃণা করি) ইত্যাদি হিসাবে ভেরিয়েবলগুলি ব্যবহার করতে পারি etc.

নতুন পদ্ধতি

পিএইচপি 7 হিসাবে, নতুন উপায় চালু করা হয়েছে:

দ্রষ্টব্য:<something> বন্ধনীর ভিতরে থাকা প্রত্যেকটির <function_name>অর্থ কোনও কিছু গঠনের জন্য এক বা একাধিক এক্সপ্রেশন, উদাহরণস্বরূপ কোনও ফাংশনের নাম গঠন করা এক্সপ্রেশন।

গতিশীল ফাংশন কল: অন ফ্লাইটের ফাংশনটির নাম

আমরা বন্ধনীতে এক বা একাধিক এক্সপ্রেশন ব্যবহার করতে পারি ফাংশনের নাম হিসাবে কেবল একবারে, আকারে:

(<function_name>)(arguments);

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

function something(): string
{
    return "something";
}

$bar = "some_thing";

(str_replace("_", "", $bar))(); // something

// Possible, too; but generally, not recommended, because makes your code more complicated
(str_replace("_", "", $bar))()(); 

দ্রষ্টব্য: চারপাশে প্রথম বন্ধনীর অপসারণ str_replace()কোনও ত্রুটি নয়, তবুও বন্ধনী স্থাপন কোড আরও পাঠযোগ্য। তবে আপনি কখনও কখনও এটি করতে পারবেন না, যেমন .অপারেটর ব্যবহার করার সময় । সামঞ্জস্যপূর্ণ হতে, আমি আপনাকে সর্বদা বন্ধনী রাখার পরামর্শ দিই।

গতিশীল পদ্ধতি কল: পদ্ধতিটির নাম অন ফ্লাই

ডায়নামিক ফাংশন কলগুলির মতো আমরাও একই পদ্ধতিতে কল করতে পারি, বন্ধনীগুলির পরিবর্তে কোঁকড়া ধনুর্বন্ধনী দ্বারা ঘিরে (অতিরিক্ত ফর্মের জন্য, টিএল নেভিগেট; ডিআর বিভাগে):

$object->{<method_name>}(arguments);
$object::{<method_name>}(arguments);

এটি একটি উদাহরণে দেখুন:

class Foo
{
    public function another(): string
    {
        return "something";
    }
}

$bar = "another thing";

(new Something())->{explode(" ", $bar)[0]}(); // something

গতিশীল পদ্ধতি কল: অ্যারে সিনট্যাক্স

পিএইচপি 7-তে আরও একটি মার্জিত উপায় যুক্ত করা হল:

[<object>, <method_name>](arguments);
[<class_name>, <method_name>](arguments); // Static calls only

উদাহরণ হিসাবে:

class Foo
{
    public function nonStaticCall()
    {
        echo "Non-static call";
    }
    public static function staticCall()
    {
        echo "Static call";
    }
}

$x = new X();

[$x, "non" . "StaticCall"](); // Non-static call
[$x, "static" . "Call"](); // Static call

দ্রষ্টব্য: পূর্ববর্তীটির তুলনায় এই পদ্ধতিটি ব্যবহারের সুবিধাটি হ'ল, আপনি কলের ধরণের বিষয়ে উদ্বিগ্ন হন না (যেমন এটি স্থির কিনা।

অতিরিক্ত উদাহরণ: বেনাম শ্রেণীর ব্যবহার

জিনিসগুলিকে কিছুটা জটিল করে তোলার জন্য, আপনি বেনামে ক্লাস এবং উপরের বৈশিষ্ট্যগুলির সংমিশ্রণটি ব্যবহার করতে পারেন :

$bar = "SomeThing";

echo (new class {
    public function something()
    {
        return 512;
    }
})->{strtolower($bar)}(); // 512

টিএল; ডিআর (উপসংহার)

সাধারণত, পিএইচপি 7 তে নিম্নলিখিত ফর্মগুলি ব্যবহার করে সমস্ত সম্ভব:

// Everything inside `<something>` brackets means one or more expressions
// to form something

// Dynamic function call
(<function_name>)(arguments)

// Dynamic method call on an object
$object->{<method_name>}(arguments)
$object::{<method_name>}(arguments)

// Dynamic method call on a dynamically-generated object
(<object>)->{<method_name>}(arguments)
(<object>)::{<method_name>}(arguments)

// Dynamic method call, statically
ClassName::{<method_name>}(arguments)
(<class_name>)::{<method_name>}(arguments)

// Dynamic method call, array-like (no different between static and non-static calls
[<object>, <method_name>](arguments)

// Dynamic method call, array-like, statically
[<class_name>, <method_name>](arguments)

মূলত এই পিএইচপি আলাপের ভিত্তিতে ।


1
এক্সপ্রেশনগুলির দুর্দান্ত তালিকাতেও রয়েছে:(expressions)->$bar()
নেক্রো

1
@ নেক্রো ধন্যবাদ, আমি এটি যুক্ত করেছি!
MAChitgarha

7

গতিশীল ফাংশন নাম এবং নেমস্পেস

নেমস্পেসগুলি ব্যবহার করার সময় গতিশীল ফাংশন নামের সম্পর্কে একটি পয়েন্ট যুক্ত করতে।

আপনি যদি নেমস্পেস ব্যবহার করছেন তবে বিশ্বব্যাপী নেমস্পেসে আপনার ফাংশনটি বাদ দিলে নিম্নলিখিতগুলি কাজ করবে না :

namespace greetings;

function hello()
{
    // do something
}

$myvar = "hello";
$myvar(); // interpreted as "\hello();"

কি করো?

call_user_func()পরিবর্তে আপনাকে ব্যবহার করতে হবে:

// if hello() is in the current namespace
call_user_func(__NAMESPACE__.'\\'.$myvar);

// if hello() is in another namespace
call_user_func('mynamespace\\'.$myvar);

3

@ ক্রিস কে এর উত্তরটি পরিপূরক করে যদি আপনি কোনও অবজেক্টের পদ্ধতিতে কল করতে চান তবে আপনি এটি বন্ধের সাহায্যে একটি একক ভেরিয়েবল ব্যবহার করে কল করতে পারেন:

function get_method($object, $method){
    return function() use($object, $method){
        $args = func_get_args();
        return call_user_func_array(array($object, $method), $args);           
    };
}

class test{        

    function echo_this($text){
        echo $text;
    }
}

$test = new test();
$echo = get_method($test, 'echo_this');
$echo('Hello');  //Output is "Hello"

আমি এখানে অন্য একটি উদাহরণ পোস্ট


3

এই প্রশ্ন এবং উত্তরগুলি থেকে আমি কী শিখেছি। সবাইকে ধন্যবাদ!

যাক আমার এই পরিবর্তনগুলি এবং ফাংশন রয়েছে:

$functionName1 = "sayHello";
$functionName2 = "sayHelloTo";
$functionName3 = "saySomethingTo";

$friend = "John";
$datas = array(
    "something"=>"how are you?",
    "to"=>"Sarah"
);

function sayHello()
{
echo "Hello!";
}

function sayHelloTo($to)
{
echo "Dear $to, hello!";
}

function saySomethingTo($something, $to)
{
echo "Dear $to, $something";
}
  1. যুক্তি ছাড়াই ফাংশন কল করতে

    // Calling sayHello()
    call_user_func($functionName1); 

    হ্যালো!

  2. 1 টি যুক্তি সহ ফাংশন কল করতে

    // Calling sayHelloTo("John")
    call_user_func($functionName2, $friend);

    প্রিয় জন, হ্যালো!

  3. 1 বা ততোধিক আর্গুমেন্টের সাথে ফাংশনটি কল করতে আপনি যদি কার্যকরভাবে আপনার ফাংশনগুলিকে কল করে থাকেন এবং প্রতিটি ফাংশনে বিভিন্ন সংখ্যক যুক্তি রয়েছে তবে এটি কার্যকর হবে। এটি আমার ক্ষেত্রে যা আমি সন্ধান করেছি (এবং সমাধান করেছি)। call_user_func_arrayচাবিকাঠি

    // You can add your arguments
    // 1. statically by hard-code, 
    $arguments[0] = "how are you?"; // my $something
    $arguments[1] = "Sarah"; // my $to
    
    // 2. OR dynamically using foreach
    $arguments = NULL;
    foreach($datas as $data) 
    {
        $arguments[] = $data;
    }
    
    // Calling saySomethingTo("how are you?", "Sarah")
    call_user_func_array($functionName3, $arguments);

    প্রিয় সারাহ, কেমন আছেন?

ইয়ে বাই!



1

নিম্নলিখিত কোড পিএইচপি-তে ডায়নামিক ফাংশন লিখতে সহায়তা করতে পারে। এখন ফাংশনের নামটি পরিবর্তনশীল '$ কারেন্ট_পেজ' দ্বারা পরিবর্তনশীল হতে পারে।

$current_page = 'home_page';
$function = @${$current_page . '_page_versions'};
$function = function() {
    echo 'current page';
};
$function();

বেনামে ফাংশন (অর্থাত্ ডায়নামিক ফাংশন) ভেরিয়েবল ফাংশনগুলির (যেমন ডায়নামিকভাবে ফাংশন কলিং ) থেকে পৃথক । এছাড়াও, আপনি $functionকোনও কারণ ছাড়াই পরিবর্তনশীল প্রতিস্থাপন করছেন ।
MAChitgarha

0

ভেরিয়েবলের মধ্যে সংরক্ষিত নামটি ব্যবহার করে কোনও ফাংশনটি নিরাপদে কল করার সহজ উপায় হ'ল,

//I want to call method deploy that is stored in functionname 
$functionname = 'deploy';

$retVal = {$functionname}('parameters');

আমি নীচের মতো লারাভেলে মাইগ্রেশন টেবিলগুলি গতিশীলভাবে তৈরি করতে ব্যবহার করেছি,

foreach(App\Test::$columns as $name => $column){
        $table->{$column[0]}($name);
}

-5

একটি প্রচলিত পদ্ধতি, যা আমার মনে এসেছিল তা হ'ল যদি আপনি কিছু সুপার অতি স্বায়ত্তশাসিত এআইয়ের মাধ্যমে পুরো কোডটি তৈরি না করেন যা নিজে লিখেছেন , আপনার "গতিশীল" কল করতে চান এমন ফাংশনগুলি ইতিমধ্যে আপনার কোডে সংজ্ঞায়িত হয়েছে এমন উচ্চ সম্ভাবনা রয়েছে are বেস। সুতরাং কেন কেবল স্ট্রিংটি পরীক্ষা করে দেখুন না এবং কুখ্যাত ifelseনৃত্যকে আহবান করার জন্য ... আপনি আমার বক্তব্য পান get

যেমন।

if($functionName == 'foo'){
  foo();
} else if($functionName == 'bar'){
  bar();
}

এমনকি switch-caseযদি আপনি ifelseমইয়ের স্বাদযুক্ত স্বাদ পছন্দ না করেন তবে ব্যবহার করা যেতে পারে ।

আমি বুঝতে পারি যে কিছু ক্ষেত্রে রয়েছে " গতিশীলভাবে ফাংশনটি কল করা " একটি পরম প্রয়োজনীয়তা ( কিছু পুনরাবৃত্ত যুক্তির মতো যা নিজেই পরিবর্তিত হয় )। তবে প্রতিদিনের বেশিরভাগ তুচ্ছ ব্যবহারের ক্ষেত্রে স্রেফ ডজ করা যায়।

এটি আপনার অ্যাপ্লিকেশন থেকে প্রচুর অনিশ্চয়তা ছড়িয়ে দেয়, যখন স্ট্রিং উপলব্ধ কার্যের কোনও সংজ্ঞা না মিলে তবে আপনাকে ফ্যালব্যাক ফাংশন সম্পাদন করার সুযোগ দেয়। এই প্রোগ্রামটিতে।


যদি ভেরিয়েবলের মানটি ইতিমধ্যে ফাংশনের নাম হয় তবে অতিরিক্ত কাজ কেন? এছাড়াও এটি চালানোর আগে পিএইচপি দ্বারা ফাংশনটি বিদ্যমান কিনা তা দেখার জন্য দৃ solid় প্রতিক্রিয়া পাওয়া ভাল হবে: if (method_exists($functionName)) $functionName(); else //exception or handle
নেক্রো

2
হ্যাঁ আপনার পয়েন্টটি বৈধ, তবে যেহেতু ফাংশনটির নামটি গতিশীল, আপনার যুক্তিতে কোনও নামই যদি সেই নামের দ্বারা কোনও ফাংশন উপস্থিত থাকে তবে তা কার্যকর করা হবে that ফাংশনটি বর্তমান পরিস্থিতিতে প্রাসঙ্গিক কিনা তা নির্বিশেষে। আমার পদ্ধতির বিষয়টি নিশ্চিত করে যে কেবলমাত্র কয়েকটি নির্দিষ্ট ফাংশন কার্যকর করা যেতে পারে অন্যথায় একটি ত্রুটি নিক্ষেপ করা যেতে পারে। এটি অ্যারে এবং এর মতো করে সহজ করা যায়।
মোহাম্মদ আবদুল মুজিব

-11

আপনি কেন এটি ব্যবহার করতে হবে তা আমি জানি না, মোটেও আমার পক্ষে খুব ভাল লাগছে না, তবে কেবলমাত্র যদি অল্প পরিমাণে ফাংশন থাকে তবে আপনি যদি / অন্যরকম নির্মাণ করতে পারেন তবে ব্যবহার করতে পারেন। সরাসরি সমাধান সম্ভব কিনা তা আমি জানি না।

something foo = "বার" এর মতো কিছু; $ পরীক্ষা = "ফু"; প্রতিধ্বনি $$ পরীক্ষা;

বারটি ফিরে আসা উচিত, আপনি চেষ্টা করতে পারেন তবে আমি মনে করি না এটি কাজ করে for

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.