2012-01-13 17 views
6

Come si deve verificare se una matrice contiene almeno 1 elemento (anziché essere semplicemente un array vuoto $myarray = array();)?Come verificare se la matrice contiene almeno un elemento

C'è un modo THE?

E.g.

if ($myarray) { } 

if (count($myarray)) { } 

if (count($myarray) > 0) { } 

Oppure c'è UN modo sbagliato?

risposta

15

per almeno 1 elemento sarebbe:

if (!empty($myarray)) {} 
+0

Restituisce true se la matrice contiene almeno 1 elemento. –

+0

Grazie! è così semplice ma utile. – technophyle

5

Forse verificare per non -emputiness via empty()?

Le seguenti cose sono considerati vuoto:

  • "" (una stringa vuota)
  • 0 (0 come numero intero)
  • 0,0 (0 come float)
  • "0" (0 come stringa)
  • NULL
  • FALSE
  • array() (una matrice vuota)
  • var $ var; (Una variabile dichiarata, ma senza un valore in una classe)
if (!empty($myarray)) { 
    // 
} 

Ma io non sono sicuro che, se c'è un modo canonico di farlo; php potrebbe seguire TMTOWTDI.

+0

Piuttosto: '! Empty ($ myArray)' –

+0

Direi '! Empty ($ array)' –

+0

@miku Beh, è ​​probabilmente una questione di ' TIMTOWTDIBSCONABE' quindi 'empty()' è :) – PeeHaa

2

Credo if(!empty($myarray)) funziona troppo. Significa che non si eseguirà w/e se si ottiene array([0] => '')

+0

Cosa intendi con 'Significa che non eseguirai w/e se ottieni array ([0] => '')'? – PeeHaa

Problemi correlati