<?php
$selectedItems = [
["ItemId" => "T123", "Price" => "12.00"],
["ItemId" => "T99", "Price" => "13.00"],
];
$orders = [
["ItemId" => "T123", "Cost" => "12.00"],
["ItemId" => "T99", "Cost" => "13.00"],
["ItemId" => "T33", "Cost" => "13.00"],
];
function checkContainsOrders($selectedItems, $orders)
{
//Commenting this lines that are necessary only for Laravel Collection
//$selectedItems = $selectedItems->toArray();
//$orders = $orders->toArray();
$selectedItemsKeys = array_column($selectedItems, 'ItemId');
$orderItemsKeys = array_column($orders, 'ItemId');
$intersectedValues = array_intersect($selectedItemsKeys, $orderItemsKeys);
if (count($intersectedValues) === count($selectedItems) || count($intersectedValues) === count($orders)) {
echo 'yup';
} else {
echo 'nope';
}
}
checkContainsOrders($selectedItems, $orders);
preferences:
17.1 ms | 405 KiB | 5 Q