[PHP] Si la valeur a une certaine forme..
Fermé
HD
-
25 déc. 2006 à 19:15
Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 - 26 déc. 2006 à 23:58
Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 - 26 déc. 2006 à 23:58
A voir également:
- [PHP] Si la valeur a une certaine forme..
- Mise en forme conditionnelle excel - Guide
- Mise en forme tableau word - Guide
- Easy php - Télécharger - Divers Web & Internet
- Le fichier contient le nombre de voyageurs dans 3 gares. dans la cellule b5, saisissez une formule qui calcule le total et se met à jour si on change une valeur du tableau. quel total obtenez-vous ? quelle formule avez-vous saisie ? ✓ - Forum Google Docs
- Dans la présentation à télécharger, sarah avait encadré directement le titre de certaines diapositives avant d’automatiser cette mise en forme pour tout le document. sur quelles diapositives avait-elle encadré directement le titre ? ✓ - Forum Bureautique
7 réponses
Ssylvainsab
Messages postés
2884
Date d'inscription
samedi 29 juillet 2006
Statut
Modérateur
Dernière intervention
15 août 2020
825
26 déc. 2006 à 01:31
26 déc. 2006 à 01:31
Bonsoir.
Si tu veux vérifier que la variable est bien un nombre, tu peux utiliser is_numeric.
Plus précisément, is_int te permet de vérifier que la variable est un entier et is_float un décimal.
Si tu veux vérifier que la variable est bien un nombre, tu peux utiliser is_numeric.
Plus précisément, is_int te permet de vérifier que la variable est un entier et is_float un décimal.
Ssylvainsab
Messages postés
2884
Date d'inscription
samedi 29 juillet 2006
Statut
Modérateur
Dernière intervention
15 août 2020
825
26 déc. 2006 à 01:55
26 déc. 2006 à 01:55
Pour voir s'il y a une virgule, utilises is_float.
Est-ce qu'il ne peut y avoir qu'un nombre avant la virgule (si virgule il y a ;-) ), ou peut-il y en avoir plus ?
Est-ce qu'il ne peut y avoir qu'un nombre avant la virgule (si virgule il y a ;-) ), ou peut-il y en avoir plus ?
justement, le but est de savoir s'il y a 0, 1 ou plusieurs chiffres après la virgule...
merci à tous pour votre aide
merci à tous pour votre aide
Ssylvainsab
Messages postés
2884
Date d'inscription
samedi 29 juillet 2006
Statut
Modérateur
Dernière intervention
15 août 2020
825
26 déc. 2006 à 18:49
26 déc. 2006 à 18:49
Je demande combien de chiffres il peut y avoir avant la virgule, car si tu le sais c'est très simple.
Tu peux utiliser la fonction substr, qui te permet de "couper" une chaine.
Si il y en a un par exemple, il faut enlver ce chiffre et la virgule, puis compter le nombre de caractères.
Tu ferais donc :
echo strlen(substr($chaine,2));
Tu peux utiliser la fonction substr, qui te permet de "couper" une chaine.
Si il y en a un par exemple, il faut enlver ce chiffre et la virgule, puis compter le nombre de caractères.
Tu ferais donc :
echo strlen(substr($chaine,2));
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lefou4
Messages postés
73
Date d'inscription
jeudi 21 décembre 2006
Statut
Membre
Dernière intervention
5 mai 2010
44
26 déc. 2006 à 19:10
26 déc. 2006 à 19:10
Les expressions régulières marchent bien aussi :
(on teste que la valeur est un nombre décimal avec 2 chiffres max après la virgule)
if(ereg("^[0-9]+(\,[0-9]{1,2})?$",$ma_var)) echo "ok";
else echo "erreur";
Sinon pour connaître le nombre de chiffres derrière la virgule :
$tab = explode(",",$ma_var);
$nbre_chiffres = $tab[sizeof($tab)-1];
(on teste que la valeur est un nombre décimal avec 2 chiffres max après la virgule)
if(ereg("^[0-9]+(\,[0-9]{1,2})?$",$ma_var)) echo "ok";
else echo "erreur";
Sinon pour connaître le nombre de chiffres derrière la virgule :
$tab = explode(",",$ma_var);
$nbre_chiffres = $tab[sizeof($tab)-1];
Ssylvainsab
Messages postés
2884
Date d'inscription
samedi 29 juillet 2006
Statut
Modérateur
Dernière intervention
15 août 2020
825
26 déc. 2006 à 23:58
26 déc. 2006 à 23:58
Les expressions régulières marchent bien aussi
Oui, mais c'est plus lent.
Tu peux utiliser une solution en mélangeant les deux :
echo strlen(preg_replace'#[0-9]+(,([0-9]+))?#','$2',$chaine));
Oui, mais c'est plus lent.
Tu peux utiliser une solution en mélangeant les deux :
echo strlen(preg_replace'#[0-9]+(,([0-9]+))?#','$2',$chaine));
26 déc. 2006 à 01:37