Est-il possible de connaitre le nombre de chiffre d'un entier ou d'un
réel sans faire de transtypage. Existe-il une fonction du type intlen()
ou reallen()?
Sans faire de transtypage on ne peut pas, que je sache.
Et pour des rééls, il reste les expressions régulières...
<?php
$float = 33.333;
preg_match_all('`([\d])`', (string)$float, $aRes);
echo count($aRes[1]);
?>
Merci pour ton aide
En essayant ton code j'obtient comme affichage
78lenght
77.569
Dans le premier cas, lenght est pris comme une chaine et dans le second il retire 1.
j'ai une E_NOTICE en error_reporting(E_ALL)
Ca serait plustot
$long = $int.length;
$long = $int.length-1;
Mais j'ai le même résultat. Ce qui est marrant car le compile m'indique 'Use of undefined constant length' ou 'Use of undefined constant lenght' mais ça m'enlève quand même 1 dans les deux orthographes différentes.
Désolé j'avais pas vu les nouveaux post. C'est bizarre d'avoir une E_notice mais qu'il enlève 1 dans mes deux cas, non?
Merci malalam pour ta réponse et à toi aussi nicomilville.
Le problème avec (string) ou la regex, c'est que sur des nombres de plus de douze chiffres il intègre l'exposant et donne la longeur du chiffre avec l'exposant.
ex: $float = 43.434344444444444;
$long=12;
Merci encore (mais où vas tu chercher tous çà, franchement balaise)
Par contre une dernière chose quelle directive du php.ini, çela m'éviterais de checher et encore thanks.