Php Alphabet Boucle
<?php
$string = 'hey';
foreach (range('a', 'z') as $i) {
if ($string == '$i') {
echo $i;
}
}
?>
Pourquoi ça ne marche pas? s'il vous plaît dites-moi.
De quoi êtes-vous en train d'essayer de faire?
ouais, ce n'est pas de travail ? Vous êtes à la comparaison de chaque lettre de l'alphabet de "hey" il est donc normal que rien ne se passe.
ouais, ce n'est pas de travail ? Vous êtes à la comparaison de chaque lettre de l'alphabet de "hey" il est donc normal que rien ne se passe.
OriginalL'auteur PHP_Newbie | 2010-02-13
Vous devez vous connecter pour publier un commentaire.
Vous avez deux problèmes dans votre code.
Tout d'abord, des guillemets simples chaînes de caractères (
'
) se comportent différemment des guillemets chaîne ("
). Lors de l'utilisation des guillemets simples chaînes de caractères, des séquences d'échappement (autres que\'
et\\
) ne sont pas interprétées et variable ne sont pas utilisés. Ceci peut être corrigé en tant que tel (en enlevant les guillemets, ou de les modifier de manière à double-quotes):Deuxièmement, votre condition ne sera jamais évaluer à
TRUE
comme'hey'
n'est jamais égale à une seule lettre de l'alphabet. Pour évaluer si la lettre est dans le mot, vous pouvez utiliserstrpos()
:La
!== FALSE
est important dans ce cas que0
renvoie la valeurFALSE
. Cela signifie que si vous souhaitez supprimer le!== FALSE
, votre premier personnage n'aurait pas sortir.OriginalL'auteur Andrew Moore
Il est, mais vous ne voyez pas tout, parce que:
Aussi, si votre $, je n'ai pas de guillemets simples (ce qui est la valeur de "$i " littéralement)
OriginalL'auteur meouw
En place de tests == jetez un oeil sur le strspn() fonction
OriginalL'auteur Kami