PHP-de parametr goşmak bilen öz-özüne gönükme

Sahypada index.php arg atly GET parametri ýollarylsyn. Onuň mazmunyny ekrana çykaralyň:

index.php<?php
  echo $_GET['arg'];
?>

Sahypamyz GET parametrisiz işläp bilmeýär diýeliň. Bizim ýagdaýymyzda bu hakykat-da, sebäbi parametr berlen bolmasa, $_GET['arg'] çagyryşy ýalňyşlyga getirer.

Adam nämä üçin parametrisiz sahypamyza girer diýen sorag ýüze çykyp biler. Elbetde, biz sahypamyzyň ähli ýerlerine şu parametr bilen çykgytlar goýup bileris. Ýöne bu kepillik däl: sahypamyzyň ulanyjysy, meselem, bir ýerden çykgydy göçürip alanyňda, parametri ýitirip biler. Ýa-da sadatça salgys setirini redaktirläp, onuň üstünden ýanglyşlyk bilen öçürüp biler.

Jemi, islendik ýagdaýda kodymyz şeýle ýagdaýy göz öňünde tutmaly we oňa bir zat etmeli. Elimizde näme bar?

GET parametrimiziň bardygyny barlap, diňe ol bar bolsa çykarmak bolar:

index.php<?php
  if (isset($_GET['arg'])) {
    echo $_GET['arg'];
  } else {
    // birnäçe jogap bereris, meselem, habar bilen
  }
?>

Aýdyňlyk bilen edip bolar:

index.php<?php
  if (!isset($_GET['arg'])) {
    $_GET['arg'] = 'default'; // adatdaky baha
  }
  
  echo $_GET['arg']; // kepillenen ýaly ýalňyşsyz bir zady çykarar
?>

Ýa-da şeýle edip bolar: parametrsiz sahypa girilende, şol bir sahypa parametr bilen gönükdirilşik bolsun:

index.php<?php
  if (!isset($_GET['arg'])) {
    header('Location: ?arg=default');
  }
  
  echo $_GET['arg']; // parametr kepillenen bardyr
?>
Задание 1

Ikinji wariant üçinjiden näme bilen tapawutlanýandygyny düşündiriň.

Задание 2

Sahypa page.php üçin num atly GET parametri arkaly san ýollaryp biler diýeliň. Şol parametr berilmedik girilende, awtomatik usulda şol sahypa, ýöne num parametri 1 bahasy bilen gönükdirilşik boljak etmegi amala aşyryň.