PHP-数组值作为变量的变量输出
$sheet['salary']['inside'] = 'the value';
$input = array(
"name"=>"sheet[salary][inside]",
);
echo eval("$".$input['name'].';');
//echo $input['name'];
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
$a = 'Original';
$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse");
extract($my_array);
echo "$a = $a; $b = $b; $c = $c"; //$a = Cat; $b = Dog; $c = Horse
$a = 'Original';
$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse");
extract($my_array, EXTR_PREFIX_SAME, 'dup');
echo "$a = $a; $b = $b; $c = $c; $dup_a = $dup_a;"; //$a = Original; $b = Dog; $c = Horse; $dup_a = Cat;
为啥一定要传给name变量名字符串呢?
$sheet['salary']['inside'] = 'the value';
$input = array(
"name"=>"sheet[salary][inside]",
);
preg_match_all('/[a-z]+/', $input['name'], $matchs);
$match = $matchs[0];
$value = ${$match[0]}[$match[1]][$match[2]];
var_dump($value);
die;
php-可变变量
参考php手册,没有太好的解决方案。