мне нужно некоторое помогает сравнить некоторые массивы с PHP, в основном у меня есть два массива (миссия и сотрудники):Сравнение двух массивов с PHP
Массив миссия:
Array(
[0] => Array (
[days] => Monday
[hours] => 1,0,0,0,0,0
)
[1] => Array
(
[days] => Tuesday
[hours] => 1,1,0,0,0,1
)
)
массив сотрудник:
Array(
[0] => Array (
[days] => Monday
[hours] => 1,0,0,0,0,0
)
[1] => Array
(
[days] => Tuesday
[hours] => 1,1,0,0,0,1
)
)
[1] => Array
(
[days] => Wednesday
[hours] => 1,1,0,0,0,1
)
)
Цель состоит в том, чтобы сравнить, имеется ли сотрудник для миссии, это означает, что сотрудник доступен (выше случая) Понедельник и Вторник с i занятые часы для работы (1 и 0 представляют часы и положение каждого элемента очень важно).
Во-первых сотрудник не доступен, если количество дней миссии превосходит день сотрудника:
foreach ($mission as $m) {
# code...
$m_days[] = $m['days'];
foreach ($employee as $e) {
$e_days[] = $e['days'];
}
$i++;
}
/// First condition if m_days > e_days so valid
$valid = (sizeof($m_days) > sizeof($e_days)) ? true : false;
После того, что я понятия не имею, чтобы сравнить, если работник по крайней мере, для часов миссии, если миссия понедельник с часами: 1,1,0,0,0,1, а работник бесплатно на понедельник с часами: 1,1,1,0,0,1 он может принять участие в миссии, но если он доступен в понедельник с часами : 1,0,0,0,0,1 он не может выполнить эту миссию.
С array_diff он не работает, как показано here
Не могли бы вы мне помочь, пожалуйста? Спасибо.
Здравствуйте, спасибо за ответ, но я думаю, что area_diff будет делать эту работу, основываясь на вашем сценарии мой вывод массивов: Пожалуйста, см: http://sandbox.onlinephpfunctions.com/code/ 3bd017dc429a431ab84b5b701fcd7d8dc3a947d8
Примечание: Массив для преобразования строки в [...] [...] на линии
Примечание: Массив для преобразования строки в [...] [...] on line
Array ( ) – Rahajason