Php 如何通过键和值名称调用会话值
以下是我定义的会话:Php 如何通过键和值名称调用会话值,php,arrays,session,Php,Arrays,Session,以下是我定义的会话: $_SESSION['addons'][] = array( 'addon' => $addon_id, 'quantity' => $qty, 'date_a' => $date_1, 'date_b' => $date_2, 'car_id' => $car_id, 'pickup' => $location, 'drop' => $d_location )
$_SESSION['addons'][] = array(
'addon' => $addon_id,
'quantity' => $qty,
'date_a' => $date_1,
'date_b' => $date_2,
'car_id' => $car_id,
'pickup' => $location,
'drop' => $d_location
);
我这样称呼它:
<?php
foreach($_SESSION['addons'] as $addon=>$add_val)
{
//echo $addon;
foreach($add_val as $value)
{
echo $value;
}
}
?>
这样我就可以选择调用哪个值和不调用哪个值
我试过这样的方法:
//setting adon id as key and the rest as value but doesn't work in the way I wanted.
$_SESSION['addons'][$addon_id] = array(
'quantity' => $qty,
'date_a' => $date_1,
'date_b' => $date_2,
'car_id' => $car_id,
'pickup' => $location,
'drop' => $d_location
);
我猜您希望直接看到特定键的值。您可以初始化会话,如下所示:
$_SESSION['addons'] = array('addon'=>$addon_id,'quantity'=>$qty,'date_a'=>$date_1,'date_b'=>$date_2,'car_id'=>$car_id,'pickup'=>$location,'drop'=>$d_location);
然后,例如,如果希望回显键日期的值,可以执行以下操作:
echo $_SESSION['addons']['date_a'];
希望这有帮助 在代码中,add_val是每个插件的数组,因此echo add_val['addon'];将包含$addon\u id
你有你要去的地方,你只是走得有点太深了你的第二个foreach正在做它应该做的事情-循环通过$add_val值变量中的键,并输出它找到的任何值。第二种方法为什么不起作用呢?我不知道您的应用程序的范围,但我通常建议使用对象而不是$SESSION变量来执行类似的操作;重复6次?如果它在第二个for循环内,则每次迭代都将调用它。把它放在你有//echo$addon的地方;我知道了…非常感谢
echo $_SESSION['addons']['date_a'];