我的刀片中有一些输入字段,如下所示:
<input type="text" name="product[0][name]">
<input type="text" name="product[0][price]">
<input type="text" name="product[1][name]">
<input type="text" name="product[1][price]">
如果我提交表单,如果我dd(Input::get(“product”):
MY PRODUCT ARRAY
array:2 [â¼
0 => array:2 [â¼
"name" => "unicorn"
"price" => 5000
]
1 => array:2 [â¼
"name" => "house"
"price" => 10000
]
]
现在我有了另一个数组,如下所示:
API PRODUCT ARRAY
array:80 [â¼
0 => array:18 [â¼
"name" => "john doe for sale"
"price" => 120
...
]
1 => array:18 [â¼
"name" => "house"
"price" => 12000
..
]
3 => array:18 [â¼
"name" => "unicorn"
"price" => 5100
...
]
4 => array:18 [â¼
"name" => "blabla"
"price" => 60000
...
]
现在我的问题
我想检查“我的产品阵列”中是否有与“API产品阵列”中相同名称的产品
如果是这种情况,那么应该检查“API产品阵列”中的一种产品的价格是否高于“我的产品阵列”。
如果发生这种情况,则应将此产品添加到UserNotificationProducts数组中。
我编写的代码看起来像这样,但根本不适用于我。
我需要帮助。
foreach ($apiproducts as $key => $product)
{
if (in_array($product["name"], $myproducts["name"]))
{
if($product["price"] > (the current product of "myproducts")
array_push($productnotification, $product["name"]);
}
}
“我的产品阵列”最多有三种产品。API产品阵列多达100个。
谢谢
我尝试了两种答案,并计算了两种解决方案的时间成本。
Istiaque Ahmed的答案需要0.15902519226074 ms
Hamelraj的答案(在你发布答案之前,我尝试了你所做的一切:D)需要0.031232833862305毫秒
因此,哈梅尔拉吉的答案是更快的解决方案。谢谢你们两个!