php - 无法理解以下代码中的 PHP 关联数组代码差异
问题描述
我的购物车中有此代码。我从一个网站得到这个。我正在使用它并且代码工作正常,但我无法理解 和 之间的first code
区别second code
。对我来说似乎两者都是一样的。但是,如果我只使用第一个代码代替第二个代码,那么我的cart
工作不正常。那么谁能告诉我它们之间有什么区别??
First code:
$cart = [
$id => [
'name' => $product->name,
'quantity' => 1,
'price' => $product->price,
'photo' => $product->image
]
];
Second code:
$cart[$id] = [
'name' => $product->name,
'quantity' => 1,
'price' => $product->price,
'photo' => $product->image
];
解决方案
第一个代码$cart
用一个新数组替换之前的任何内容。这意味着$cart
忘记了之前的任何值。
第二个代码仅将一个新的键值对添加到数组中,或者如果该键值对已经存在则替换它。这意味着不会忘记其他键值对。
我假设$id
是产品标识符。第一个代码只允许您的购物车中的一个产品,而第二个代码允许许多不同的产品。
推荐阅读
- c# - 如何将 FINDSTR 的输出从 C# 保存到文本文件?
- typescript - 打字稿对类的通用约束
- angular - 角度 7 刷新或路线更改缓慢
- database - MS Access Multiple value from a FORM into table as a Single Line
- c++ - One-line output operator for a binary tree
- php - Cakephp 3.6.14:在文本字段中显示 html 格式的文本
- c - Display Progress C
- rally - 从 Rally 推动 udeploy 部署
- javascript - 动画不改变位置
- json - Jersey Jackson JSON attribute change globally