2010-07-27 5 views
2

Je ne suis pas à 100%, mais (paramètres $) serait appelé un tableau en php:tableaux de php (et remvoing certains éléments)

$setting; 

$setting['host'] = "localhost"; 
$setting['name'] = "hello"; 

mais quel est le nom de ce qui est différent de ce qui précède:

$settings = array("localhost", "hello"); 

également à partir du premier exemple, comment puis-je supprimer l'élément appelé name?

(s'il vous plaît corriger aussi ma terminologie si je l'ai fait une erreur)

+0

Dans votre premier morceau de code que vous voulez dire probablement des paramètres $ [ 'host'] et les paramètres $ [ 'nom'] au lieu de ($ setting, sans s) –

+0

ouais, désolé c'était juste une faute de frappe :) –

Répondre

3

Je ne suis pas à 100%, mais ce (paramètres $) serait appelé un tableau en php:

vous devez être sûr à 100%, ils sont :)

mais quel est le nom de ce qui est différent de ce qui précède:

Ce:

$setting['host'] = "localhost"; 
$setting['name'] = "hello"; 

Et ce sont les différentes façons de déclarer un tableau PHP.

$settings = array("localhost", "hello"); 

En fait, ce comment devrait être plus tard pour correspondre à la première avec les touches:

$settings = array("host" => "localhost", "name" => "hello"); 

également du premier exemple, comment puis-je supprimer l'élément appelé nom?

Vous pouvez supprimer avec unset:

unset($setting['name']); 

Notez que lors de la déclaration tableau PHP, faire:

$setting = array(); 

Plutôt que:

$setting; 

Notez également que vous pouvez ajouter des informations aux tableaux à la fin en suffixant le m avec [], par exemple pour ajouter troisième élément au tableau, vous pouvez simplement faire:

$setting[] = 'Third Item'; 

Plus d'informations:

http://php.net/manual/en/language.types.array.php

+0

+2 si je pouvais ... bonne réponse. – Timothy

2

Comme l'a dit sắc, ils sont à la fois tableau. La façon correcte de déclarer un tableau est $settings = array(); (par opposition à seulement $settings; dans votre première ligne.)

La principale différence entre la première et la seconde est que le premier vous permet d'utiliser $settings['host'] et $settings['name'], alors que celui-ci ne peut être utilisé avec des indices numériques ($settings[0] et $settings[1]). Si vous voulez utiliser la première façon, vous pouvez également déclarer votre tableau comme ceci: $settings = array('host'=>'localhost', 'name'=>'hello');

More reading on PHP arrays

1

Eh bien, c'est en effet un tableau. Vous avez différents types de tableaux en PHP. Le premier exemple que vous mentionnez s'appelle un tableau associatif. Simplement un tableau avec une chaîne comme clé.

Un tableau associatif peut être déclarée de deux manières:

1) (la façon dont vous l'a déclaré):

$sample = array(); 
$sample["name"] = "test"; 

2)

$sample = array("name" => "localhost"); 

De plus, le premier exemple peut aussi être utilisé pour ajouter des éléments existants à un tableau. Par exemple:

$sample["name"][] = "some_name"; 
$sample["name"][] = "some_other_name"; 

Lorsque vous exécutez le code ci-dessus avec print_r (échantillon $) vous obtenez quelque chose comme:

Array ([name] => Array ([0] => some_name [1] => some_other_name)) 

Ce qui est très utile lors de l'ajout de chaînes multiples à un tableau existant.

Suppression d'une valeur d'un tableau est très simple,

Comme mentionné ci-dessus, utilisez la fonction unset.

unset($sample["name"]) 

à UNSET la valeur du nom entier et des valeurs qui lui sont connectés Ou quand vous voulez seulement désinitialiser un élément spécifique dans l'échantillon de $ [ « nom »]:

unset($sample["name"][0]); 

ou, ofcourse tout élément tu aimerais.

Donc fondamentalement .. la différence entre votre premier exemple et le dernier est que le premier est un tableau associatif, et le second ne l'est pas.

Pour d'autres références sur les tableaux, visitez the PHP manual on arrays

Questions connexes