Php 创建一个数组以显示我需要的所有项目
我正在尝试将所有必要的信息放入一个数组中,因此,例如,我的所有T恤都将归入该T恤数组Php 创建一个数组以显示我需要的所有项目,php,laravel,Php,Laravel,我正在尝试将所有必要的信息放入一个数组中,因此,例如,我的所有T恤都将归入该T恤数组 'tshirts' => [ ] 因此,在该数组中,我希望所有属于T恤类别的产品名称及其价格, 但我现在面临的问题是,我只得到了一部分数据,而不是所有数据 所以我现在得到的是这个 'tshirts' => [ 'name' => 'tshirt 1' ] 而不是该类别中所有T恤的列表 这是我的密码 $products = Product::all(); $productArr
'tshirts' => [
]
因此,在该数组中,我希望所有属于T恤类别的产品名称及其价格,
但我现在面临的问题是,我只得到了一部分数据,而不是所有数据
所以我现在得到的是这个
'tshirts' => [
'name' => 'tshirt 1'
]
而不是该类别中所有T恤的列表
这是我的密码
$products = Product::all();
$productArr = [];
foreach($products as $product)
{
$product[$product->category] => [
'name' => $product->name
];
}
dd($productArr);
它应该是
$productArr
,而不是$product
$products=Product::all();
$productArr=[];
foreach($products as$product){
$productArr[$product->category][]=[
“名称”=>$product->name
];
}
每次循环查找特定类别时,都会使用包含一个项目的新数组覆盖该类别的数组
您需要附加到它:
而且
=>
错误,您需要=
在这里,并且数组的名称是$productArr
<代码>$product是循环中的源项 您的代码有一个语法错误,$product[$product->category]=>[
应该是$product[$product->category]=[
。接下来是逻辑错误,您一直在覆盖类别中的数据。您需要另一组括号来在每次迭代中添加一个项目:$product[$product->category][]=…
$productArr[$product->category][] = [
'name' => $product->name
];