2014-04-17 224 views
1

使用PHP我要在6個位數000007PHP字符串格式化

我已經通過printf功能做到了這一點,但希望將其存儲在一個變量我怎麼可以這樣做格式化數(7)等。

下文提到的代碼無法正常工作,從而輸出:000007並將它顯示在屏幕上:

$gensubjectid=printf("%06d\n", $origionalsubjectid); 

建議。

+0

'的sprintf()'應該做你需要什麼 –

+0

的printf返回的sprintf不工作 輸出的字符串 – David

+0

多德的printf的長度以下是合適的解決方案。 $ input = 7; str_pad($ input,6,「0」,STR_PAD_LEFT); –

回答

7

使用sprintf - 它與printf相同,但它返回格式化的字符串。

2

您可以使用:spirntf

$unformattedNumber = 7; 
$formattedNumber = sprintf('%06d', $unformattedNumber); 

或者你可以試試這個(str_pad):

$input = 7; 
str_pad($input, 6, "0", STR_PAD_LEFT); 
+0

sprintf不工作str_pad確定 –

0

使用str_pad()。

$invID = str_pad($invID, 10, '0', STR_PAD_LEFT); 

或者

用sprintf:http://php.net/function.sprintf

$number = 51; 
$number = sprintf('%10d',$number); 
print $number; 
// outputs 0000000051 

$數= 8051; $ number = sprintf('%10d',$ number); print $ number; //輸出0000008051

+0

這就是我想要的,我得到了準確的結果,因爲我希望它真的非常有幫助。 –