Comunque funziona solo se hai sempre 3 decimali.
Quindi se ne hai meno devi aggiungere gli zeri a destra.
Comunque funziona solo se hai sempre 3 decimali.
Quindi se ne hai meno devi aggiungere gli zeri a destra.
Scusate i puntini di sospensione...... La verità è che non ho argomenti....
Non ci sto capendo più nulla!!!!
Quale esempio funziona con 3 decimali??? Io di decimali ne ho 2!!!
altro problema:
$convertito = str_pad((int_val($originale * 10), 9, "0", STR_PAD_LEFT);
non funziona!!
altro problema:
scusate ma per tornare al valore iniziale non devo /10 ma al massimo /100 o sbaglio??? dato che gli ultimi sono sempre decimali... perchè suggerite di dividere per 10?
Grazie
Please mi date qualche dritta???
perchè
$convertito = str_pad((int_val($originale * 10), 9, "0", STR_PAD_LEFT);
non funziona??
per tornare al valore iniziale non devo fare /10 ma fare /100 ...corretto??? dato che gli ultimi sono sempre decimali... perchè suggerite di dividere per 10?
scusate ma ora sto facendo un po' di confusione
Vorrei capire quale esempio utilizzare, dando per scontato che io avrò sempre 2 decimali che
1) con la prima funzione vengono tolti gestendo un unico numero dove le ultime due cifre sono sempre decimali
2) quando devo ripristinare il numero iniziale, saprò sempre che le ultime due cifre sono decimali
Grazie
Hai ragione, moltiplica e dividi per 100Originariamente inviato da Valeria75_bis
$originale = 12345.678;
$convertito = str_pad((int_val($originale * 100), 9, "0", STR_PAD_LEFT);
$originale2=$convertito/100;
E' ovvio che essendo l'originale a 3 decimali il terzo lo perdi.
Scusate i puntini di sospensione...... La verità è che non ho argomenti....
Scusa, c'è una parentesi in più e un errore di sintassi nel mio codice, ecco perchè non funziona (ho scritto di fretta)
Ecco, ho anche "risolto" il fatto che 12345.00 viene riconvertito in 12345 anzichè 12345.00codice:$originale = 12345.00; if (($originale - intval($originale)) == 0) { $toprint = $originale . ".00"; } else { $toprint = $originale; } echo "Originale = {$toprint} "; if (strlen($originale * 100) > 10) { exit("Numero fuori scala!"); } $convertito = str_pad(intval($originale * 100), 9, "0", STR_PAD_LEFT); echo "Convertito = {$convertito} "; $riconvertito = $convertito / 100; if (is_int($riconvertito)) { $riconvertito = $riconvertito . ".00"; } echo "Ri convertito = {$riconvertito}";
![]()
Grazie mille per l'aiuto!!!!