Пока у тебя нет конкретного вопроса, в духе: "Вот я самолично решаю такую-то задачу и вот не получается сделать вот это, вот код, получается не так как я хочу, а вот логи интерпретатора", а есть ЗАДАНИЕ которое ты описал в своем посте - тебе на fl.ru freelance.ru upwork.com
Окей, ты обновил свой вопрос. Теперь прочитаем ошибку - тебе сообщают, что в параметр 2 функции array_key_exists должен быть передан массив, а на деле не передано ничего.
Далее вторая ошибка - тебе сообщают, что скрипт был завершён так как работал дольше 30сек., а у тебя в настройках php выставлен параметр max exec time = 30сек.