shagg0r Skrevet 10. juni 2005 Del Skrevet 10. juni 2005 Noen som vet hvorfor: <?php $tall = 12.10 print $tall; ?> ...blir 12.1? Og isåfal hvordan får jeg det til å bli 12.10? PS uten å legge til en ekstra 0 bak! Lenke til kommentar
svatt Skrevet 10. juni 2005 Del Skrevet 10. juni 2005 Når det gjelder tall i php så er 12.10 og 12.1 det samme. Du kan bruke sprintf() for å lage en string som inneholder tallet med riktig format. For eksempel $tall = 12.10; $riktigformatert = sprintf("%01.2f", $tall); print($riktigformatert); http://no.php.net/manual/en/function.sprintf.php Lenke til kommentar
shagg0r Skrevet 10. juni 2005 Forfatter Del Skrevet 10. juni 2005 Takk for forslaget, men funket ikke for meg Lenke til kommentar
shagg0r Skrevet 10. juni 2005 Forfatter Del Skrevet 10. juni 2005 ja, men casen er at det legger til en ekstra null og det kan jeg ikke bruke! Noen som vet om en funksjon som kan gjøre om 11.10 til en streng? Lenke til kommentar
phanti Skrevet 10. juni 2005 Del Skrevet 10. juni 2005 Metoden du leter etter kan være number_format() Bare at da må du oppgi antall desimaler for å få det svaret du vil ha. Vet ikke hvordan du kan løse det dessverre Lenke til kommentar
ThaMezzy Skrevet 12. juni 2005 Del Skrevet 12. juni 2005 (endret) Hvis du bruker den funksjonen phanti nevnte her så kan du jo bare dele opp tallet med arrays. Altså at du deller opp tallet slik at du har et array som er før punktum/komma og etter. Så teller du antall tegn som er i arrayet etter punktum/komma. Kan gi kode eksempel når jeg kommer hjem fra kjedelig bursdag. Kan selvfølgelig hende at jeg er helt på bærtur her, men jeg prøvde:) Endret 12. juni 2005 av ThaMezzy Lenke til kommentar
phanti Skrevet 12. juni 2005 Del Skrevet 12. juni 2005 Skjønner tanken, men det vil ikke la seg løse, fordi dersom du gir en variabel tallverdien 12.10, så får den verdien 12.1. Bruker vi number_format(), så må vi vite antallet desimaler på forhånd. Dersom vi bruker 2 desimaler som i dette tilfellet, så er det jo greit, da vet vi det, og vi trenger ikke telle noe aray. Men jeg skjønner ikke hva som er problemet hans i første omgang. Bruk number_format() ved utskrifter. Variablene som inneholder tall "oppfører" seg jo alikevel som alle andre variabler (tanke på 'skjøting' med . osv) Lenke til kommentar
ThaMezzy Skrevet 12. juni 2005 Del Skrevet 12. juni 2005 Skjønner tanken, men det vil ikke la seg løse, fordi dersom du gir en variabel tallverdien 12.10, så får den verdien 12.1. Bruker vi number_format(), så må vi vite antallet desimaler på forhånd. Dersom vi bruker 2 desimaler som i dette tilfellet, så er det jo greit, da vet vi det, og vi trenger ikke telle noe aray. Men jeg skjønner ikke hva som er problemet hans i første omgang. Bruk number_format() ved utskrifter. Variablene som inneholder tall "oppfører" seg jo alikevel som alle andre variabler (tanke på 'skjøting' med . osv) Det er riktig som du sier. Er enig i det. For å være helt ærlig så skjønner ejg ikke hvorfor man skal hente mer desimaler enn 2. Kommer jo ann på bruken, men i de fleste tilfeller vil jeg si at det holder med to desimaler. Lenke til kommentar
Torbjørn Skrevet 12. juni 2005 Del Skrevet 12. juni 2005 (endret) det du spør om er meget enkelt: $tall = 11.10; $ny_var = "$tall"; echo gettype($ny_var); vips.. du har gjort tallet ditt om til en streng Endret 12. juni 2005 av Torbjørn Lenke til kommentar
phanti Skrevet 12. juni 2005 Del Skrevet 12. juni 2005 ..og han har fortsatt tallet 11.1 (med ett desimal), bare at det revolusjonerende nok er en string. Fortsatt uløst problem Lenke til kommentar
dabear Skrevet 12. juni 2005 Del Skrevet 12. juni 2005 Fortsatt uløst problem På hvilken måte er dette et problem? Jeg skjønner det bare ikke altså. Lenke til kommentar
Torbjørn Skrevet 12. juni 2005 Del Skrevet 12. juni 2005 (endret) ..og han har fortsatt tallet 11.1 (med ett desimal), bare at det revolusjonerende nok er en string. Fortsatt uløst problem hvorfor løste da ikke number_format eller sprintf ditt problem? de returnerer også strenger. EDIT: ser at det ikke var ditt problem til å begynne med Endret 12. juni 2005 av Torbjørn Lenke til kommentar
Torbjørn Skrevet 12. juni 2005 Del Skrevet 12. juni 2005 (endret) Noen som vet hvorfor: <?php $tall = 12.10 print $tall; ?> ...blir 12.1? Og isåfal hvordan får jeg det til å bli 12.10? PS uten å legge til en ekstra 0 bak! $tall er aldri 12.10 i den koden du viser til her. $tall er hele tiden 12.1 for å lagre en streng, må du bruke "" eller '' $tall = '12.10'; echo $tall; # viser 12.1 Endret 12. juni 2005 av Torbjørn Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå