1 回答
TA贡献1836条经验 获得超5个赞
你可以这样做:
$dData = '[
{
"products": [
{
"Part ID" : "001",
"name" : "Product Name",
"category" : "Product Category",
"description" : "Product Description",
"id" : "111xyz"
},
{
"Part ID" : "002",
"name" : "Product Name 2",
"category" : "Product Category 2",
"description" : "Product Description 2",
"id" : "333xyz"
},
{
"Part ID" : "003",
"name" : "Product Name 3",
"category" : "Product Category 3",
"description" : "Product Description 3",
"id" : "444xyz"
},
{
"Part ID" : "004",
"name" : "Product Name 4",
"category" : "Product Category",
"description" : "Product Description",
"id" : "666xyz",
"features_img_id":["f1","f2","f3"]
}]
},
{
"assets": [
{
"File Name" : "Some file name",
"url" : "www.123.com/x.jpg",
"id" : "111xyz"
},
{
"File Name" : "Feature 1 file",
"url" : "www.123.com/f1.jpg",
"id" : "f1"
},
{
"File Name" : "Feature 2 file",
"url" : "www.123.com/f2.jpg",
"id" : "f2"
},
{
"File Name" : "Feature 2 file",
"url" : "www.123.com/f3.jpg",
"id" : "f3"
}]
}
]';
$data = json_decode($dData, false);
$products = $data[0]->products;
$assets = $data[1]->assets;
$processedProducts = $products;
foreach($processedProducts as $key => $product) {
foreach($assets as $asset) {
if ($asset->id == $product->id) {
$product->url = $asset->url;
}
if (isset($product->features_img_id) && in_array($asset->id, $product->features_img_id)) {
$product->feature_image_url[] = $asset->url;
}
}
unset($product->id);
unset($product->features_img_id);
}
将导致以下结果数组:
Array
(
[0] => stdClass Object
(
[Part ID] => 001
[name] => Product Name
[category] => Product Category
[description] => Product Description
[url] => www.123.com/x.jpg
)
[1] => stdClass Object
(
[Part ID] => 002
[name] => Product Name 2
[category] => Product Category 2
[description] => Product Description 2
)
[2] => stdClass Object
(
[Part ID] => 003
[name] => Product Name 3
[category] => Product Category 3
[description] => Product Description 3
)
[3] => stdClass Object
(
[Part ID] => 004
[name] => Product Name 4
[category] => Product Category
[description] => Product Description
[feature_image_url] => Array
(
[0] => www.123.com/f1.jpg
[1] => www.123.com/f2.jpg
[2] => www.123.com/f3.jpg
)
)
)
- 1 回答
- 0 关注
- 182 浏览
添加回答
举报