Уровень 8.6 задачника PHP

Задание 1

Дано меню со ссылками. Покрасьте в красный цвет ту ссылку, адрес которой совпадает с URL из адресной строки браузера.

Задание 2

Дан некоторый URL:

php$url = 'http://test.com/dir1/dir2/dir3/page.html';

Получите содержимое первой папки:

php'dir1'
Задание 3

Выведите на экран следующую пирамидку:

xxxxx
xxxx
xxx
xx
x
Задание 4

Дан список событий за определенные даты, хранящийся в следующей структуре:

php<?php
  $events = [
    [
      'date' =>  '2019-12-29'
      'event' => 'name1'
    ],
    [
      'date' =>  '2019-12-31'
      'event' => 'name2'
    ],
    [
      'date' =>  '2019-12-29'
      'event' => 'name3'
    ],
    [
      'date' =>  '2019-12-30'
      'event' => 'name4'
    ],
    [
      'date' =>  '2019-12-29'
      'event' => 'name5'
    ],
    [
      'date' =>  '2019-12-31'
      'event' => 'name6'
    ],
    [
      'date' =>  '2019-12-29'
      'event' => 'name7'
    ],
    [
      'date' =>  '2019-12-30'
      'event' => 'name8'
    ],
    [
      'date' =>  '2019-12-30'
      'event' => 'name9'
    ],
  ]
?>

Напишите код, которой переделает структуру данных вот в такую:

php[
  '2019-12-29': ['name1', 'name3', 'name5', 'name7'],
  '2019-12-30': ['name4', 'name8', 'name9'],
  '2019-12-31': ['name2', 'name6'],
]