Que signifie l' =>
opérateur dans le code suivant?
foreach ($user_list as $user => $pass)
Le code est un commentaire sur PHP.net. L'utilisateur ne spécifie pas la valeur de $user_list
, $user
ou $pass
. Je vois normalement que cela =>
signifie égal ou supérieur à.
Cependant, je ne suis pas sûr de son objectif ici car il n'est pas attribué. J'ai lu le code comme
- traiter une liste d'utilisateurs en nombres entiers
- de sorte que la valeur de chaque utilisateur soit égale ou supérieure au mot de passe
Ce qui précède n'a pas de sens pour moi.
Réponses:
=>
est le séparateur des tableaux associatifs. Dans le contexte de cette boucle foreach, il affecte la clé du tableau à$user
et la valeur à$pass
.Exemple:
Notez que cela peut également être utilisé pour les tableaux indexés numériquement.
Exemple:
la source
Cela signifie affecter la clé à $ user et la variable à $ pass
Lorsque vous attribuez un tableau, vous le faites comme ceci
Il utilise le même symbole pour traiter les tableaux dans les instructions foreach. Le '=>' relie la clé et la valeur.
Selon le manuel PHP , le '=>' a créé des paires clé / valeur.
En outre, égal ou supérieur à est la manière opposée: '> ='. En PHP, le signe supérieur ou inférieur à passe toujours en premier: '> =', '<='.
Et juste comme remarque, l'exclusion de la deuxième valeur ne fonctionne pas comme vous le pensez. Au lieu de ne vous donner que la clé, il ne vous donne en fait qu'une valeur:
la source
Parse error: syntax error, unexpected T_DOUBLE_ARROW in /var/www/cha.php on line 2
.Un code comme "a => b" signifie, pour un tableau associatif (certains langages, comme Perl , si je me souviens bien, les appellent "hash") , que "a" est une clé et "b" une valeur.
Vous voudrez peut-être jeter un œil aux documentations de, au moins:
Ici, vous avez un tableau, appelé
$user_list
, et vous l'itérerez dessus, obtenant, pour chaque ligne, la clé de la ligne dans$user
et la valeur correspondante dans$pass
.Par exemple, ce code:
Vous obtiendrez cette sortie:
(J'utilise
var_dump
pour générer une belle sortie, qui facilite le débogage; pour obtenir une sortie normale, vous utiliseriezecho
)"Égal ou supérieur" est dans l'autre sens: "supérieur ou égal", qui s'écrit, en PHP, comme ceci; "> ="
La même chose pour la plupart des langages dérivés de C: C ++, JAVA, PHP, ...
En tant que conseil: Si vous êtes débutant avec PHP, vous devriez certainement passer un peu de temps (peut - être deux ou trois heures, peut - être même une demi - journée ou même une journée entière) en passant par certaines parties du manuel :-)
Ce d vous aider beaucoup!
la source
Un tableau en PHP est une carte de clés en valeurs:
Si vous voulez faire quelque chose avec chaque paire clé-valeur de votre tableau, vous pouvez utiliser la
foreach
structure de contrôle:La variable $ array est le tableau que vous utiliserez. Les variables $ key et $ value contiendront une paire clé-valeur à chaque itération de la
foreach
boucle. Dans cet exemple, ils contiendront d'abord "jaune" et 3, puis "vert" et 4.Vous pouvez utiliser une notation alternative si vous ne vous souciez pas des clés:
la source
Les tableaux en PHP sont des tableaux associatifs (également appelés dictionnaires ou hachages) par défaut. Si vous n'affectez pas explicitement une clé à une valeur, l'interpréteur le fera silencieusement pour vous. Ainsi, l'expression que vous avez là-haut est itérée
$user_list
, rendant la clé disponible en tant que$user
et la valeur disponible en tant$pass
que variables locales dans le corps du fichierforeach
.la source
$user_list
est un tableau de données qui, lorsqu'il est bouclé, peut être divisé en son nom et sa valeur.Dans ce cas, son nom est
$user
et sa valeur est$pass
.la source