J'essaie de vérifier si une chaîne est PANGRAM mais les deux codes donnent des résultats différents.
Pourquoi n'ai-je pas la même sortie?
Number One -
<?php
$line = strtolower(trim("thequickbrownfoxjumpsoverthelazydog"));
$letters = str_split("thequickbrownfoxjumpsoverthelazydog");
$result = "pangram";
foreach ($letters as $value) {
if (strstr($line, $value) == FALSE) {
$result = "not pangram";
}
}
echo $result;
?>
Number Two -
<?php
$line = strtolower(trim("thequickbrownfoxjumpsoverthelazydog"));
$letters = str_split("thequickbrownfoxjumpsoverthelazydog");
$result = "not pangram";
foreach ($letters as $value) {
if (strstr($line, $value) == TRUE) {
$result = "pangram";
}
}
echo $result;
?>
La deuxième version est erronée, car elle définit 'result' de $ à' pangram' dès qu'il trouve une seule lettre correspondant. Mais c'est seulement un pangram si ** chaque ** lettre est trouvée. – Barmar
Que voulez-vous dire par "prédicats" dans ce contexte? – Barmar