我正在尝试找出如何根据数组名称从三个数组中的一个获取值.
$ABC001 = array('A'=>'10','B'=>'2','C'=>'1.0');
$ABC002 = array('A'=>'20','B'=>'4','C'=>'1.1');
$ABC003 = array('A'=>'30','B'=>'6','C'=>'1.2');
Run Code Online (Sandbox Code Playgroud)
我有一个传递给我的脚本的变量,它将包含类似ABC@001或的东西ABC@002
我正在删除@所以var值现在匹配数组名称/
$test = str_replace('@','',$var);
Run Code Online (Sandbox Code Playgroud)
如果我这样做,var_dump ( $$test )我从正确的数组中获取所有值,但如果我这样做,echo $$test['A'] 或者echo $$test[0] 我没有从正确数组中的第一个键获取值.
有人可以建议如何做到这一点.
谢谢
试试这个$ {$ test}来获取数组的值
<?php
$ABC001 = array('A'=>'10','B'=>'2','C'=>'1.0');
$ABC002 = array('A'=>'20','B'=>'4','C'=>'1.1');
$ABC003 = array('A'=>'30','B'=>'6','C'=>'1.2');
$var = "ABC@002";
$test = str_replace('@','',$var);
var_dump(${$test}['A']);
Run Code Online (Sandbox Code Playgroud)