PHP, необходимо создать функцию для подсчёта количество схожих значений в массивах
Даётся 2 массива:
$categories = [
"Incoming" => "Входящие",
"Study" => "Учёба",
"Work"=> "Работа",
"Home_Affairs" => "Домашние дела",
"Auto" => "Авто"
];
$tasks =[
[
"task" => "Собеседование в IT компании",
"date_create" => "01.12.2019",
"category" => $categories["Work"],
"create" => false
],
[
"task" => "Выполнить тестовое задание",
"date_create" => "25.12.2019",
"category" => $categories["Work"],
"create" => false
],
[
"task" => "Сделать задание первого раздела",
"date_create" => "21.12.2019",
"category" => $categories["Study"],
"create" => true
],
[
"task" => "Встреча с другом",
"date_create" => "22.12.2019",
"category" => $categories["Incoming"],
"create" => false
],
[
"task" => "Купить корм для кота",
"date_create" => null,
"category" => $categories["Home_Affairs"],
"create" => false
],
[
"task" => "Заказать пиццу",
"date_create" => null,
"category" => $categories["Home_Affairs"],
"create" => false
]
];
Функция должна принимать два аргумента:
-список задач в виде массива (двумерный массив $tasks);
-название проекта (значение в $categories);
результат: кол-во значений в $categories схожих со значениями из массива $tasks.
function count_tasks(array $tasks, array $categories): int
{
$count = 0;
foreach ($tasks as $task) {
if (isset($task["category"])){
$count += count($categories);
} else {
return 0;
}
}
return $count;
}
У меня получается вывести сколько всего таких значений в обоих массивах /30
Ответы (1 шт):
Автор решения: Владислав Дмитриев
→ Ссылка
Необходимо в параметрах задавать строку а не массив с категориями (category), тогда всё заработало