在PHP中用前導零格式化數字

我有一個包含值1234567的變量。 php

我但願它精確地包含8位數字,即01234567函數

是否有PHP函數呢? spa


#1樓

sprintf是您所須要的。 .net

在上面連接的頁面中,編輯(按某種方式由downvotes請求 ),這裏有一個示例「零填充整數」: code

<?php
    $isodate = sprintf("%04d-%02d-%02d", $year, $month, $day);
?>

#2樓

鑑於該值在$ value中: orm

  • 回顯它: 字符串

    printf("%08d", $value); get

  • 爲拿到它,爲實現它: io

    $formatted_value = sprintf("%08d", $value); form

這應該夠了吧


#3樓

使用sprintf

sprintf('%08d', 1234567);

另外,您也能夠使用str_pad

str_pad($value, 8, '0', STR_PAD_LEFT);

#4樓

簡單的答案

$p = 1234567;
$p = sprintf("%08d",$p);

我不肯定如何解釋「永遠不會超過8位」的註釋,以及它是指輸入仍是輸出。 若是它引用輸出,則必須有一個附加的substr()調用來裁剪字符串。

截斷前8位數字

$p = substr(sprintf('%08d', $p),0,8);

截斷最後8位數字

$p = substr(sprintf('%08d', $p),-8,8);

#5樓

儘管我不肯定本身要作什麼,但您可能正在尋找sprintf

這將是:

$value = sprintf( '%08d', 1234567 );
相關文章
相關標籤/搜索