我可以将此文本转换为数组类型。 因为我在某个页面上获取结果但是它返回到文本而不是数组。
$array="Array ( [Dog] => Array ( [leg] => 4 [eyes] => 2 ) [Cat] => Array ( [leg] => 3 [eyes] => 4 ) )";
答案 0 :(得分:3)
您可以使用var_export存储可解析字符串,因为上面的字符串在使用eval
执行时会出现语法错误,因为这不是有效的数组声明语法。
$array=array(1,2,3,4,5);
$b=var_export($array,true);
$c=eval("return $b;");
print_r($c);
答案 1 :(得分:0)
我不认为它应该在引号中。通过将它放在引号内,您告诉编译器它是一个字符串。如果它是PHP它应该是
$array = array("Dog" => array("leg"=>4, "eyes" => 2),"Cat" => array("leg"=>3, "eyes" => 4));
或者就像你有一个字符串,并希望将其中的数据转换为字符串???
答案 2 :(得分:0)
你有来自var_export函数的这个数组
你可以像这样带回你的阵列。
<?php
$array="Array ( [Dog] => Array ( [leg] => 4 [eyes] => 2 ) [Cat] => Array ( [leg] => 3 [eyes] => 4 ) )";
$finalRes=eval("return $array;");
print_r($finalRes);
?>
您可以使用var_export存储可解析的字符串,因为上面的字符串在使用eval执行时会出现语法错误,因为这不是有效的数组声明语法。
定义:Eval()用于将输入字符串评估为PHP。就像使用Echo()函数一样,它输出所有内容,除了不将其作为文本输出,它将其输出为要执行的PHP代码。其中一个用途是将代码存储在数据库中以便稍后执行。 也称为:评估字符串 例子:
<?php
$name = 'Joe';
$name2 = 'Jim';
$a = 'My friends are $name and $name2';
print $a . "<br>";
eval("\$a = \"$a\";");
print $a . "<br>";
?>
这将输出我的朋友是$ name和$ name2,当第一次使用print语句调用时,但会输出我的朋友是Joe和Jim在第二次调用后运行eval()
你可以从这里获得数组