0
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 . ",";
}

1 : 445 などの代わりに、値 1 : 4、1 : 5、1 : 3 を返します。

4

2 に答える 2

1

展開された配列をループしてから-:

setcookie("mnau", "1-445 1-51 1-3001");
//var_dump($_COOKIE);

$kosik = explode(" ", $_COOKIE["mnau"]);
foreach ($kosik as $value) {
    echo str_replace('-', ':', $value) . ', ';
}

これは出力されます

1:445, 1:51, 1:3001,
于 2013-06-09T15:34:36.850 に答える
0

@ Fabioの答えが最善ですが、現在のコードを維持したい場合は、@ Caramirielが推奨することを実行し$value-、で使用する前に配列にする必要がありlist()ます。

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,
于 2013-06-09T15:42:21.753 に答える