Autor Zpráva
qqqe
Profil *
ahoj,

prosím,

normálně ve skriptu mám jakoby:
if($a) return false;


tedy když bude $a pravda, skript se "zastaví" a nedoběhne úplně celý, to je OK.

Ale co když to chci přepsat do funkce? Aby když funkce bude pravda, zastaví provádění, jinak ne?
function a($i) {
if($i) return false; else return true; 
}


a když pak volám ve skriptu return a($x) tak to skript "zastaví" vždycky, když funkce vrací true i false. Jak na to tedy? Díky.
Tori
Profil
if (a($x)) exit; // nebo return
Jde-li o includovaný skript, tak exit/die() zastaví vše, kdežto return pouze ukončí includovaný skript a pokračuje dál v hlavním skriptu. Pro ladící účely se dá použít i assert, ale na ostrém webu by neměl uživatel vidět prázdnou stránku.
qqqe
Profil *
no, tohle bylo krajní řešení, co jsi napsal, tedy přímo bez podmínky na funkci to nepůjde. každopádně děkuji.
Tori
Profil
qqqe:
Tak může to být i uvnitř funkce:
function zastav($podminka)  {
  if ($podminka) exit;
}
, pak by stačilo volat zastav($neco). Nevím, co tím chcete ověřovat, jestli jen něco během vývoje, nebo jestli je uživatel přihlášen, nebo něco jiného - pro různé situace jsou vhodná různá řešení.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0