$route = preg_replace('/{([a-z]+):([^\}]+)}/', '(?P<\1>\2)', $route);
заменяет в роуте конструкцию типа {page:\d+}
на (?P<page>\d+)
- (именованная группа), далее этот паттерн (#^admin/posts/(?P<page>\d+)$#
) применяется к url в 28 строке, в итоге в $matches будет нужный тебе параметр из роута: 'page' => 3, который далее передается в нужный контроллер, прописанный в твоем роуте. Аналогично и для других роутов, отличаются только имена параметров file_get_contents("http://example.com");
preg_match('{HTTP\/\S*\s(\d{3})}', $http_response_header[0], $match);
$status = $match[1];
if ($status == '200') {
//все ок
} else {
//ошибка
}