webForumDet fria alternativet

Ta bort tusentalsavgränsare

11 svar · 2 509 visningar · startad av Wibbskii

WibbskiiMedlem sedan okt. 201438 inlägg
#1

Kan man styra hur man vill visa ett tal.
Jag får med en tusentalsavgränsare, går det att visa talet utan den?
Såhär ser koden ut.

<b>Fastighetens byggnadsår:</b>&nbsp;&nbsp;<?php echo $form_data['field']['9.Fastighetens byggnadsår']; ?>
cascaMedlem sedan feb. 20005 891 inlägg
WibbskiiMedlem sedan okt. 201438 inlägg
#3

casca skrev:

http://php.net/manual/en/function.number-format.php

Tack. Kan du specificera lite vilket stycke du hänvisar till. Där fanns ju sjukt mycket information.

PeddaMedlem sedan juni 20006 032 inlägg
#4
string number_format ( float $number , int $decimals = 0 , string $dec_point = "." , string $thousands_sep = "" )
WibbskiiMedlem sedan okt. 201438 inlägg
#5

Pedda skrev:

string number_format ( float $number , int $decimals = 0 , string $dec_point = "." , string $thousands_sep = "" )

Tack. Jag är nybörjare på PHP och har lite svårt för det. Om du skulle översätta min rad jag lade i första inlägget med det du förklarat. Hur skulle det se ut då?

cascaMedlem sedan feb. 20005 891 inlägg
#6

Wibbskii skrev:

Tack. Jag är nybörjare på PHP och har lite svårt för det. Om du skulle översätta min rad jag lade i första inlägget med det du förklarat. Hur skulle det se ut då?

Det är bra att lära sig hur man läser dokumentation. Men okej:

<b>Fastighetens byggnadsår:</b>&nbsp;&nbsp;<?php echo number_format($form_data['field']['9.Fastighetens byggnadsår'], 0, ',', ''); ?>
WibbskiiMedlem sedan okt. 201438 inlägg
#7

casca skrev:

Det är bra att lära sig hur man läser dokumentation. Men okej:

<b>Fastighetens byggnadsår:</b>&nbsp;&nbsp;<?php echo number_format($form_data['field']['9.Fastighetens byggnadsår'], 0, ',', ''); ?>

Tack. Men det fungerar inte. Den avrundar till närmsta heltal istället. Alltså att 1,935 blir 2, det borde bli 1935.

Jo det är klart att det är bra att kunna läsa dokumentation men jag ställde en fråga och fick tusen svar. Det är ju därför jag frågar för att kunna lära mig.

cascaMedlem sedan feb. 20005 891 inlägg
#8

Wibbskii skrev:

Tack. Men det fungerar inte. Den avrundar till närmsta heltal istället. Alltså att 1,935 blir 2, det borde bli 1935.

Jo det är klart att det är bra att kunna läsa dokumentation men jag ställde en fråga och fick tusen svar. Det är ju därför jag frågar för att kunna lära mig.

Hur lagrar du värdet? Kör var_dump($form_data['field']['9.Fastighetens byggnadsår']) och posta resultatet här.

WibbskiiMedlem sedan okt. 201438 inlägg
#9

Resultat: string(5) "1.935"

cascaMedlem sedan feb. 20005 891 inlägg
#10

Wibbskii skrev:

Resultat: string(5) "1.935"

Men okej, det där är ju FYI inte en tusentalsavgränsare utan ett kommatecken. Vet inte varför du lagrar årtal som sträng (eller flyttal ser det ut som?) men om du bara vill få bort tecknet borde du kunna köra str_replace och ersätta det med "ingenting", såhär:

echo str_replace('.', '', $form_data['field']['9.Fastighetens byggnadsår']);

(PHP konverterar värden automatiskt om du inte explicit konverterar det. "1.935" som sträng ser ut som ett s.k. flyttal med decimaler, så om du konverterar det till ett "heltal" (integer) så kommer det att behöva avrunda uppåt eller neråt.)

drewMedlem sedan mars 2007845 inlägg
#11

str_replace('.', '', $form_data['field']['9.Fastighetens byggnadsår']);

EDIT: rackans blev tvåa.

WibbskiiMedlem sedan okt. 201438 inlägg
#12

Tack casca och drew, det fungerar perfekt.

312 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
309 ms — hämta tråd, inlägg och bilagor (db)