您好,我正在尝试将数组的值转换为变量。
我有一个名为 X 的类,如下所示:
class x{
public static function getData(){
$data = array(
"start" => '$id',
"end" => '$name'
);
return $data;
}
}
getData 函数返回数组:
数组(大小 = 2(
'start' => 字符串 '$id' (长度 = 3(
'end' => 字符串 "$name"(长度=5(
我在另一个类中具有如下功能:
$id=10;
$name = "kheshav";
$data = x::getData();
var_dump($data);
我想要的是将数组中的$id
值和$name
值重新解析为其相应的变量。因此,最终结果将如下所示:
数组(大小 = 2(
'开始' => int 10
'end' => 字符串 'kheshav' (长度=7(
我尝试了以下代码,但没有希望:
foreach ($data as $key => $value) {
$data[$key] = eval("'$value ='"$value'";");
}
这样做的传统方法是将数据传递到函数中:
class x{
public static function getData($id,$name){
$data = array(
"start" => $id,
"end" => $name
);
return $data;
}
}
$id=10;
$name = "kheshav";
$data = x::getData($id,$name);
您应该按如下方式参数化getData()
函数:
public static function getData($id, $name){
$data = array(
"start" => $id,
"end" => $name
);
return $data;
}
然后你可以这样称呼它:
$id=10;
$name = "kheshav";
$data = x::getData($id, $name);