Created
January 16, 2019 13:46
-
-
Save tomsihap/832d3a3a2e0e81163981a5758d013932 to your computer and use it in GitHub Desktop.
Liste de nombres en array avec tests de validation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Exercice : récupérer une liste de 10 nombres dans un string et la convertir en | |
* un array de 10 éléments. | |
* Il faudra vérifier que la liste contienne bien 10 éléments, et tous des chiffres. | |
*/ | |
/** | |
* 1. On se note plusieurs cas de tests ainsi que des | |
* variables intermédiaires si besoin : | |
*/ | |
$listeNombres = "azertyuiop"; | |
$listeNombres = "1234bd5zc6"; | |
$listeNombres = "12345.6789"; | |
$listeNombres = "1234567890"; // Seul cas valide | |
// Je met en variable la valeur INT de ma liste de nombres | |
$listeNombresEnInt = intval($listeNombresEnInt); | |
/** | |
* 2. Test d'existence | |
*/ | |
if(empty($listeNombres)) { | |
echo "La liste est vide."; | |
} | |
/** | |
* 3. Tests divers | |
*/ | |
// Je teste si $listeNombres fait la même taille que sa version INT. | |
// Si oui, c'est que tous les éléments sont bien des chiffres. | |
elseif( strlen($listeNombres) !== strlen( $listeNombresInt ) ) { | |
echo "Attention, la liste contient autre chose que des nombres."; | |
} | |
// Je teste que j'ai bien reçu 10 éléments. | |
elseif( strlen($listeNombres) !== 10 ) { | |
echo "Attention, il faut exactement 10 chiffres."; | |
} | |
// Enfin, si tout passe, j'affiche le tableau dans un var_dump. | |
else { | |
// str_split me permet de splitter un string en éléments de tableau. | |
$listeNombresEnArray = str_split($listeNombres, 1); | |
var_dump($listeNombresEnArray); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment