webForumDet fria alternativet

lägga till nolla framför..

PHPur PHP

5 svar · 293 visningar · startad av patrik2002

Medlem sedan okt. 2001253 inlägg
Frågan#1

hur gör ja för att lägga till en 0:a framför en siffra som är mindre än 10... asså 1 blir 01 å 2 blir 02... men 10 blir INTE 010.. nån som vet?

Medlem sedan mars 20007 896 inlägg
#2
formatMyNumber( $myNumber ) {
     if( !strlen( "" . $myNumber ) > 1 )
          return ( int ) ( "0" . $myNumber );

     return ( int ) $myNumber;
}

Anropas:

$nr1 = 1;
$nr2 = 10;

echo formatMyNumber( $nr1 );
echo formatMyNumber( $nr2 );
Medlem sedan aug. 20002 975 inlägg
#3

Två andra varianter:

<?php

$number = 8;

// alternativ 1
echo sprintf("%02d", $number)."<br>";

// alternativ 2
if ($number < 10){
   echo "0".$number;
} else echo $number;

?>
Medlem sedan mars 20007 896 inlägg
#4

sprintf()-varianten gillas. Ska du använda talet bör du cast:a till en integer igen - annars går Matte's alternativ alldeles utmärkt att använda, och är båda snabbare än mitt.

Medlem sedan jan. 2000372 inlägg
#5

Kan man verkligen ha tal som börjar på "0" i en INT-variabel?

Medlem sedan mars 20007 896 inlägg
#6

Nej. :p :e

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