我想存储以下$cart_item数组中的值:
[addons] => Array(
[0] => Array(
[name] => First Name - First Name
[value] => Gary
[price] =>
)
[1] => Array(
[name] => Church Information - Name
[value] => Victory Bible Church
[price] =>
)
[2] => Array(
[name] => Shirt Size
[value] => XL
[price] =>
)
)
我已经意识到我不能根据索引抓取值,因为这个数组有时会有更多的子数组。例如,我不能使用下面的字符串来存储数据:
$shirt_size = $cart_item['addons'][2]['value'];
因为有人可能会在数组中添加名称"Church Information - City",这将取数组索引[2],这将使$shirt_size变量取"Church Information - City"值。我不希望那样的事发生。
只有2个其他可能的数组将被包含。我想存储与一个名称相关的所有可能的值。
有人能帮我一下吗?如果你想要变量中的每一个值,你可以使用value of 'name' key来存储value' key的值。
foreach ($cart_item['addons'] as $key => $val) {
$name = strtolower(str_replace(' ','_', $val['name']));
$$name = $val['value'];
}
echo $shirt_size; //output as XL
或
如果你只想要衬衫的尺寸,那么你可以应用一个条件并得到你的值。
foreach ($cart_item['addons'] as $key => $val) {
if ($val['name'] == 'Shirt Size') {
$shirt_size = $val['value'];
}
}
echo $shirt_size; //output as XL