404 puslapis failų variklyje su PHP

Jei vartotojas adreso eilutėje įves neteisingą URL, mes turime parodyti puslapį su klaida. Tegul klaidos puslapio turinys būna saugomas atitinkamame faile:

view/404.php<div>
  puslapis nerastas
</div>

Norėdami nustatyti užklausos neteisingumą, mums reikia patikrinti, ar egzistuoja turinio failas, atitinkantis užklaustą URL:

index.php<?php
  $path = 'view' . $url . '.php';
  
  if (file_exists($path)) {
    // failas yra
  } else {
    // failo nėra
  }
?>

Jei failas yra, atiduosime turinio failą, o jei turinio nėra - klaidos failą:

index.php<?php
  $path = 'view' . $url . '.php';
  
  if (file_exists($path)) {
    $content = file_get_contents($path);
  } else {
    $content = file_get_contents('view/404.php');
  }
?>

Klaidos atveju mes turime išsiųsti į naršyklę antraštę su 404 klaida, kad aiškiai praneštume, kad puslapis nerastas. Padarykime tai:

index.php<?php
  $path = 'view' . $url . '.php';
  
  if (file_exists($path)) {
    $content = file_get_contents($path);
  } else {
    header('HTTP/1.0 404 Not Found');
    $content = file_get_contents('view/404.php');
  }
?>
Задание 1

Įgyvendinkite savo variklyje klaidos puslapio su 404 klaida atidavimą.