2009-08-27 10 views

Répondre

4

Dans le premier cas:

$variable = array(0); 
var_dump($variable); 

Vous obtenez:

array 
    0 => int 0 

-à-dire, un tableau avec un élément dont la valeur est 0.


Et, dans le second cas :

$variable = array(); 
var_dump($variable); 

vous obtenez:

array 
    empty 

-à-dire, un tableau vide.

9

La première remplit un tableau avec un nombre 0, le dernier est un tableau vide.

+0

Correct. Et ainsi le premier a un élément, alors que le second ne l'est pas (il est vide). – dave

7

La première contient un seul élément, un entier zéro. Le paramètre n'est pas un "initialiseur de taille" comme vous pouvez l'imaginer. Vous pouvez voir cela en utilisant var_dump sur eux:

$foo = array(0); 
var_dump($foo); 

$bar = array(); 
var_dump($bar); 

Ce sorties

array(1) { 
    [0]=> 
    int(0) 
} 
array(0) { 
} 
2

En plus de Meder:

 
$variable = array(0); 
count($variable); // 1 
empty($variable); // false 
(!$variable) // false 

$variable = array(); 
count($variable); // 0 
empty($variable); // true 
(!$variable) // true