Php 分解/列表()后cookie中的值无效
返回值1:4、1:5、1:3,而不是1:445等。我认为您只需要在分解数组中循环,然后用Php 分解/列表()后cookie中的值无效,php,Php,返回值1:4、1:5、1:3,而不是1:445等。我认为您只需要在分解数组中循环,然后用:替换- setcookie("mnau", "1-445 1-51 1-3001"); $kosik = explode(" ", $_COOKIE["mnau"]); foreach($kosik as $value) { list($item_ajdi, , $itemcount) = $value; echo $item_ajdi . " : " . $itemcount . ","
:
替换-
setcookie("mnau", "1-445 1-51 1-3001");
$kosik = explode(" ", $_COOKIE["mnau"]);
foreach($kosik as $value) {
list($item_ajdi, , $itemcount) = $value;
echo $item_ajdi . " : " . $itemcount . ",";
}
这将输出
setcookie("mnau", "1-445 1-51 1-3001");
//var_dump($_COOKIE);
$kosik = explode(" ", $_COOKIE["mnau"]);
foreach ($kosik as $value) {
echo str_replace('-', ':', $value) . ', ';
}
@Fabio的答案是最好的,但如果您想保持当前代码,您需要按照@Caramiriel的建议,在
-
上分解$value
,使其成为一个数组,然后再在列表()中使用它
有输出
setcookie("mnau", "1-445 1-51 1-3001");
$kosik = explode(" ", $_COOKIE["mnau"]);
foreach($kosik as $value) {
$value = explode("-", $value);
list($item_ajdi,$itemcount) = $value;
echo $item_ajdi . " : " . $itemcount . ", ";
}
我认为$value
是一种字符串类型。您正在选择第一个和第三个元素(所以字符)。您可能想在-
上进一步扩展。实际上,我将echo放在那里只是为了简化,函数本身单独使用这些值,但这对其他函数没有多大用处。不过,谢谢。
setcookie("mnau", "1-445 1-51 1-3001");
$kosik = explode(" ", $_COOKIE["mnau"]);
foreach($kosik as $value) {
$value = explode("-", $value);
list($item_ajdi,$itemcount) = $value;
echo $item_ajdi . " : " . $itemcount . ", ";
}
1 : 445, 1 : 51, 1 : 3001,