Page 1 sur 1

pourcentage

Posté : 24 avr. 2013, 13:40
par Krisiun
D'abord j'ai "0.0388" de type String je le convertit en float grâce à floatvat($variable) (quand je l'echo j'ai bien 0.0388) et ensuite il me faudrait ($variable * 100) pour avoir 3.88 mais ça me donne 0 car ça ne fait pas (0.0388 * 100) mais (0 * 100) tout simplement ...
En gros si j'ai 0.0388 comment je fais pour avoir 3.88 ? (pour avoir un pourcentage quoi!) Des idées ? :)
J'ai cherché comment déplacer la virgule j'ai pas trouvé !

Re: pourcentage

Posté : 24 avr. 2013, 14:06
par Krisiun
J'ai une solution j'ai fais :
(pour 0.0388)
$cf = explode(',',$variable)); //cf = chaine final
$cf= $cf[1]/100; //$cf[1] = 0388 grâce au explode et le divise par 100 pour avoir 3.88


si vous avez des solutions plus courte j'écoute parce'que je dois faire ça sur plus de 150 nombres !

Re: pourcentage

Posté : 24 avr. 2013, 14:07
par sirakawa
ceci fonctionne:
<?PHP
$str = "0.038";
$float = floatval($str);
var_dump($float);
$pcent = $float*100;
var_dump($pcent);
?>
mais
$pcent = $str*100;
var_dump($pcent);
donne lemême résultat;

Re: pourcentage

Posté : 25 avr. 2013, 09:39
par Hélène
function p($p1)
{
    $c=substr($p1,0,1); //prend le 1er caractère
	if ($c=='-')  { //si nombre negatif
		$cf = explode(',',$p1); //on prends ce qu'il y a après la virgule cf[1]
		$cf= $cf[1]/-100; //alors on divise par -100 pour bien avoir le nombre negatif
	}
	else  { 
		$cf = explode(',',$p1); //on prends ce qu'il y a après la virgule cf[1]
		$cf= $cf[1]/100; //sinon on divise par 100
	}
	return $cf;
}