根据W3Schools,这应该起作用:
// A two-dimensional array:
$cars = array
(
array("Volvo",100,96),
array("BMW",60,59),
array("Toyota",110,100)
);
那么下面的代码为什么没有:
$json = [];
foreach ($res as $product) {
$slur = $product['slur'];
$node = [
'description' => $product['description'],
'colors' => $product['color'],
'region' => $product['region']
];
var_dump($node); // Node has proper values
$json[$slur] = $node;
}
var_dump($json); // Keys are fine, $product['region'] works, colors and description don't
我的$ node var_dump:
array(3) { ["description"]=> string(128) "Ac risus eu amet rhoncus cursus, rhoncus in amet nascetur, diam, elementum porttitor penatibus nec cum dignissim proin et augue." ["colors"]=> string(67) "gun-blue, gun-green, gray-black, gun-orange, gun-lightblue, gun-red" ["region"]=> string(6) "europe" } array(3) { ["description"]=> string(128) "Ac risus eu amet rhoncus cursus, rhoncus in amet nascetur, diam, elementum porttitor penatibus nec cum dignissim proin et augue." ["colors"]=> string(67) "gun-blue, gun-green, gray-black, gun-orange, gun-lightblue, gun-red" ["region"]=> string(3) "usa" } array(3) { ["description"]=> string(128) "Ac risus eu amet rhoncus cursus, rhoncus in amet nascetur, diam, elementum porttitor penatibus nec cum dignissim proin et augue." ["colors"]=> string(19) "pink, green, purple" ["region"]=> string(6) "europe" } array(3) { ["description"]=> string(128) "Ac risus eu amet rhoncus cursus, rhoncus in amet nascetur, diam, elementum porttitor penatibus nec cum dignissim proin et augue." ["colors"]=> string(103) "black, red, silver, blue, green, gunmetal, brightgreen, gold, lightblue, darkblue, orange, pink, purple" ["region"]=> string(6) "europe" } array(3) { ["description"]=> string(128) "Ac risus eu amet rhoncus cursus, rhoncus in amet nascetur, diam, elementum porttitor penatibus nec cum dignissim proin et augue." ["colors"]=> string(67) "gun-blue, gun-green, gray-black, gun-orange, gun-lightblue, gun-red" ["region"]=> string(3) "usa" } array(3) { ["description"]=> string(128) "Ac risus eu amet rhoncus cursus, rhoncus in amet nascetur, diam, elementum porttitor penatibus nec cum dignissim proin et augue." ["colors"]=> string(67) "gun-blue, gun-green, gray-black, gun-orange, gun-lightblue, gun-red" ["region"]=> string(3) "usa" } array(3) { ["description"]=> string(128) "Ac risus eu amet rhoncus cursus, rhoncus in amet nascetur, diam, elementum porttitor penatibus nec cum dignissim proin et augue." ["colors"]=> string(67) "gun-blue, gun-green, gray-black, gun-orange, gun-lightblue, gun-red" ["region"]=> string(6) "europe" } array(3) { ["description"]=> string(128) "Ac risus eu amet rhoncus cursus, rhoncus in amet nascetur, diam, elementum porttitor penatibus nec cum dignissim proin et augue." ["colors"]=> string(67) "gun-blue, gun-green, gray-black, gun-orange, gun-lightblue, gun-red" ["region"]=> string(3) "usa" }
我的$ json var_dump:
array(5) { ["alignmee"]=> array(3) { ["description"]=> string(0) "" ["colors"]=> string(0) "" ["region"]=> string(3) "usa" } ["xl"]=> array(3) { ["description"]=> string(0) "" ["colors"]=> string(0) "" ["region"]=> string(3) "usa" } ["hybrid"]=> array(3) { ["description"]=> string(0) "" ["colors"]=> string(0) "" ["region"]=> string(3) "usa" } ["classic"]=> array(3) { ["description"]=> string(0) "" ["colors"]=> string(0) "" ["region"]=> string(3) "usa" } ["original"]=> array(3) { ["description"]=> string(0) "" ["colors"]=> string(0) "" ["region"]=> string(6) "europe" } }
我真的不明白我在做什么错。谁能解释一下?
提前致谢!
您将json_encode()
在PHP中使用通过获取PHP数组并将其传递通过它来实际构造JavaScript JSON字符串。
//Instigate the $json array, otherwise it'll throw a notice.
$json = array();
foreach ( $res as $product ) {
$slur = $product['slur'];
$node = [
'description' => $product['description'],
'colors' => $product['color'],
'region' => $product['region']
];
//We use the [] here to append to a new index
//on each iteration of the loop; otherwise, it'll overwrite the last value
$json[$slur][] = $node;
}
echo json_encode( $json );
其次,可能同样重要!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句