2009-10-24 15 views

Odpowiedz

37

Rodzaje pustych (z podręcznika PHP).

  • "" (ciąg pusty)
  • 0 (0 a jest liczbą całkowitą)
  • "0" (0, ponieważ łańcuch)
  • NULL
  • : pochodne są uważane za pusty dla każdej zmiennej następujących
  • FALSE
  • array() (pusta tablica)
  • var $ var; (Zmienna zadeklarowana, ale bez wartości w klasie), więc

wziąć przykład poniżej:

$arr = array(
      'ele1' => 'test', 
      'ele2' => false   
     ); 

1) $ arr [ 'ele3'] nie jest ustawiony. A więc:
isset($arr['ele3']) === false && empty($arr['ele3']) === true
nie jest ustawiony i pusty. empty() sprawdza, czy zmienna jest ustawiona i pusta, czy nie.

2) $ arr ['ele2'] jest ustawione, ale puste. Więc:
isset($arr['ele2']) === true && empty($arr['ele2']) === true

1) $ arr [ 'ele1'] jest ustawiony i pusty:
isset($arr['ele1']) === true && empty($arr['ele1']) === false

jeśli chcesz sprawdzić, czy jest ona pusta, wystarczy użyć funkcji empty() .

+2

Oooh, pomocne. Chciałbym przegłosować was, gdybym miał dość przedstawicieli. Heh. – Nathaniel

8
if(empty($array['item'])) 

lub

if(!isset($array['item'])) 

lub

if(!array_key_exists('item', $array)) 

w zależności od tego, co precyzyjnie znaczy "pusta". Zobacz dokumentację dla empty(), isset() i array_key_exists(), co dokładnie mają na myśli.

+0

OK. Jakie są puste? – Nathaniel

+0

Dodatek: Myślę, że przedmiot (y), z którymi mam do czynienia wyglądają jak => '', Co by to było? – Nathaniel

+0

To będzie puste, ustawione i istniejące. – chaos

0
<?php 

$myarray=array(1,5,6,5); 

$anotherarray=array(); 

function checkEmpty($array){ 
return (count($array)>0)?1:0; 
    } 
echo checkEmpty($myarray); 

echo checkEmpty($anotherarray); 

?> 

(dla sprawdzenia, czy pusty wynik 1 else 0);

Kompaktowość jest tym, za czym się upieram w swoim kodzie.

Powiązane problemy