2012-01-13 13 views
6

¿Cómo debo probar si una matriz contiene al menos 1 elemento (en lugar de simplemente ser una matriz vacía $myarray = array();)?Cómo probar si la matriz contiene al menos un elemento

¿Hay un modo THE?

E.g.

if ($myarray) { } 

if (count($myarray)) { } 

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

¿O hay un THE wrong way?

Respuesta

15

durante al menos 1 elemento sería:

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

Devuelve true si la matriz contiene al menos 1 elemento. –

+0

Gracias! es tan simple pero útil. – technophyle

5

Tal vez comprobar no -empuntas a través de empty()?

las siguientes cosas se consideran vacío:

  • "" (una cadena vacía)
  • 0 (0 como un entero)
  • 0,0 (0 como un flotador)
  • "0" (0 como una cadena)
  • NULL
  • FALSO
  • matriz() (una matriz vacía)
  • var $ var; (Una variable declarada, pero sin un valor en una clase)
if (!empty($myarray)) { 
    // 
} 

Pero no estoy seguro, si hay una forma canónica para hacerlo; php podría seguir TMTOWTDI.

+0

Más bien: '! Empty ($ myArray)' –

+0

Yo diría '! Empty ($ array)' –

+0

@miku Bueno, es una cuestión de ' TIMTOWTDIBSCINABTE' so 'empty()' es :) – PeeHaa

2

Creo if(!empty($myarray)) también funciona. Significará que no ejecutará w/e si obtiene array([0] => '')

+0

¿Qué quiere decir con 'Significará que no ejecutará w/e si obtiene array ([0] => '')'? – PeeHaa

Cuestiones relacionadas