我有这个数组
$addons_item_1 = array(
"addon_1" => "65",
"addon_2" => "55",
"addon_3" => "60",
"addon_4" => "80",
"addon_5" => "75",
"addon_6" => "75",
"addon_7" => "30",
"addon_8" => "20",
"addon_9" => "25",
"addon_10" => "25",
"addon_11" => "25"
);
$addons_item_2 = array(
"addon_1" => "65",
"addon_2" => "55",
"addon_3" => "60",
"addon_4" => "80",
"addon_5" => "75",
"addon_6" => "75",
"addon_7" => "30",
"addon_8" => "20",
"addon_9" => "25",
"addon_10" => "25",
"addon_11" => "25"
);
现在从用户输入我得到以下变量:
$item = here value will be "item_1" or "item_2" according to user input
现在,如果用户选择了item_1,我必须从第一个数组获取插件,或者如果用户选择了item_2,那么我将不得不从第二个数组中获取插件。 我可以简单地通过使用if-else语句来实现这一点,因为我有很多数组20-25所以它会很困难而且很混乱,所以我想这样做但是它不起作用:
$item = "item_1"; //now I have to fetch addons from first array
我的代码
$addons = $addons_'.$item['addon_1']; //suppose I need only one addon
但是这段代码无效
答案 0 :(得分:2)
您可以使用"变量"
$item = "item_2";
$ary = ${"addons_{$item}"}; // $ary is now $addons_item_2
但这很丑陋而且很混乱。将所有插件放入数组会好得多:
$addons = array(
1 => array(
"addon_1" => "65",
"addon_2" => "55",
etc
),
2 => array(
"addon_1" => "65",
"addon_2" => "55",
etc
)
);
只需通过索引选择您想要的内容:
$item = 2;
$xyz = $addons[$item]['addon_2'];
答案 1 :(得分:-1)
试试这个
$addons = $addons_'.$item.'['addon_1'];