Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] istnienie zmiennej
Forum PHP.pl > Forum > PHP
kufalo
Witam,
Jaki jest najprostszy sposob na sprawdzenie czy dana zmienna istnieje?
isset niestety do konca sie nie sprawdza, poniewaz zwraca false dla istniejacych zmiennych o wartosci null.
Kod
<?
$a=null;
var_dump($a);
var_dump(isset($a));
?>
marcio
!empty() lub !empty() polaczony z isset()

Chociaz empty() w przypadku null zwraca false.
Wiec zrob wlasna funckje gdzie bedziesz uzywal isse(),empty() i is_null() wtedy bedzie ci dzialalo jak chcesz

  1. $a = null;
  2.  
  3. if(!empty($a) || is_null($a)) return true;
  4. else return false;

Powinno dac true jednak nie mam teraz jak przetestowac.
bim2
Hmm, "Jeśli nie jest puste albo jest puste zwróci true, więc zawsze zwróci true.
Najlepszym wyjściem żeby uniknąć także notice jest
  1. if(isset($zmienna) && !empty($zmienna)) { }
marcio
DObra dobra mialo byc empty() a nie !empty() wtedy gdy bedzie null zwroci true.




To co ty pokazales tez podalem takie rozwiazanie bo sam tak robie ale gdy wartosc bedzie null i isset() jak i empty() zwroca false, przynajmniej tak mi sie wydaje.

bim2
No null to null czyli nic. Nie rozumiem.
marcio
Cytat
isset niestety do konca sie nie sprawdza, poniewaz zwraca false dla istniejacych zmiennych o wartosci null.


Wiec kolega chce ze gdy zmienna bedzie null to zwroci true a nie false tak jak sie dzieje teraz, mam nadzieje ze nie mowie herezji.

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.