Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

716

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi có một biến chứa giá trị

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

Tôi muốn nó chứa chính xác 8 chữ số, tức là

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

Có chức năng PHP cho điều đó không?

Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

Đã hỏi ngày 9 tháng 11 năm 2009 lúc 9:25Nov 9, 2009 at 9:25

0

Sử dụng

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

sprintf('%08d', 1234567);

Ngoài ra, bạn cũng có thể sử dụng

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

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

Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

Zanshin13

9014 Huy hiệu vàng19 Huy hiệu bạc38 Huy hiệu đồng4 gold badges19 silver badges38 bronze badges

Đã trả lời ngày 9 tháng 11 năm 2009 lúc 9:29Nov 9, 2009 at 9:29

reko_treko_treko_t

54.3K10 Huy hiệu vàng85 Huy hiệu bạc77 Huy hiệu đồng10 gold badges85 silver badges77 bronze badges

7

Cho rằng giá trị có giá trị $:

  • Để lặp lại nó:

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

  • Để có được nó:

    $number = 1;
    $number = str_pad($number, 2, '0', STR_PAD_LEFT);
    
    0

Điều đó sẽ làm các trick

Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

Logan Murphy

6.0003 huy hiệu vàng23 Huy hiệu bạc41 Huy hiệu đồng3 gold badges23 silver badges41 bronze badges

Đã trả lời ngày 9 tháng 11 năm 2009 lúc 9:28Nov 9, 2009 at 9:28

Kaze không koekaze không koeKaze no Koe

3,2341 Huy hiệu vàng21 Huy hiệu bạc22 Huy hiệu đồng1 gold badge21 silver badges22 bronze badges

Khi tôi cần 01 thay vì 1, những điều sau đây đã làm việc cho tôi:

$number = 1;
$number = str_pad($number, 2, '0', STR_PAD_LEFT);

Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

Pang

9.223146 Huy hiệu vàng85 Huy hiệu bạc118 Huy hiệu đồng146 gold badges85 silver badges118 bronze badges

Đã trả lời ngày 23 tháng 4 năm 2016 lúc 8:55Apr 23, 2016 at 8:55

Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

1

echo str_pad("1234567", 8, '0', STR_PAD_LEFT);

Đã trả lời ngày 16 tháng 10 năm 2014 lúc 8:33Oct 16, 2014 at 8:33

Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

joan16vjoan16vjoan16v

4.9593 huy hiệu vàng47 Huy hiệu bạc48 Huy hiệu đồng3 gold badges47 silver badges48 bronze badges

str_pad($value, 8, '0', STR_PAD_LEFT);
7 là những gì bạn cần.

Chỉnh sửa (bằng cách nào đó được yêu cầu bởi các downvote), từ trang được liên kết ở trên, đây là một mẫu "số nguyên không có vành":


Đã trả lời ngày 9 tháng 11 năm 2009 lúc 9:27Nov 9, 2009 at 9:27

1

Mặc dù tôi không thực sự chắc chắn những gì bạn muốn làm nhưng có lẽ bạn đang tìm kiếm Sprintf.

Điều này sẽ:

$value = sprintf( '%08d', 1234567 );

Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

Adi

5.0696 Huy hiệu vàng32 Huy hiệu bạc47 Huy hiệu đồng6 gold badges32 silver badges47 bronze badges

Đã trả lời ngày 9 tháng 11 năm 2009 lúc 9:33Nov 9, 2009 at 9:33

HuppiehuppieHuppie

11.1k3 Huy hiệu vàng31 Huy hiệu bạc34 Huy hiệu đồng3 gold badges31 silver badges34 bronze badges

Câu trả lời đơn giản

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

Tôi không chắc làm thế nào để giải thích nhận xét nói rằng "nó sẽ không bao giờ nhiều hơn 8 chữ số" và nếu nó đề cập đến đầu vào hoặc đầu ra. Nếu nó đề cập đến đầu ra, bạn sẽ phải có một cuộc gọi bổ sung () để kẹp chuỗi.

Để kẹp 8 chữ số đầu tiên

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

Để kẹp 8 chữ số cuối cùng

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

Đã trả lời ngày 9 tháng 11 năm 2009 lúc 9:30Nov 9, 2009 at 9:30

Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

Peter Lindqvistpeter LindqvistPeter Lindqvist

10k3 huy hiệu vàng39 huy hiệu bạc60 huy hiệu đồng3 gold badges39 silver badges60 bronze badges

Nếu các số đầu vào luôn luôn có 7 hoặc 8 chữ số, bạn cũng có thể sử dụng

$str = ($input < 10000000) ? 0 . $input : $input;

Tôi đã thực hiện một số bài kiểm tra và nhận được rằng điều này sẽ tăng gấp đôi nhanh như

str_pad($value, 8, '0', STR_PAD_LEFT);
8 hoặc
str_pad($value, 8, '0', STR_PAD_LEFT);
7. Nếu đầu vào có thể có bất kỳ độ dài nào, thì bạn cũng có thể sử dụng
If the input can have any length, then you could also use

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

Điều này không nhanh như cái khác, nhưng cũng sẽ nhanh hơn một chút so với

str_pad($value, 8, '0', STR_PAD_LEFT);
8 và
str_pad($value, 8, '0', STR_PAD_LEFT);
7.

BTW: Bài kiểm tra của tôi cũng nói rằng

str_pad($value, 8, '0', STR_PAD_LEFT);
7 nhanh hơn một chút so với
str_pad($value, 8, '0', STR_PAD_LEFT);
8. Tôi đã thực hiện tất cả các bài kiểm tra với PHP 5.6.

Chỉnh sửa: Altough phiên bản

$number = 1;
$number = str_pad($number, 2, '0', STR_PAD_LEFT);
8 dường như vẫn còn rất nhanh (Php 7.2), nó cũng bị hỏng trong trường hợp đầu vào của bạn có thể dài hơn độ dài bạn muốn pad. Ví dụ. Bạn muốn đệm đến 3 chữ số và đầu vào của bạn có 4 so với
$number = 1;
$number = str_pad($number, 2, '0', STR_PAD_LEFT);
9 sẽ chỉ dẫn đến 3 chữ số cuối cùng
Altough the
$number = 1;
$number = str_pad($number, 2, '0', STR_PAD_LEFT);
8 version seems to be still very fast (PHP 7.2), it also is broken in case your input can be longer than the length you want to pad to. E.g. you want to pad to 3 digits and your input has 4 than
$number = 1;
$number = str_pad($number, 2, '0', STR_PAD_LEFT);
9 will only result in the last 3 digits

Đã trả lời ngày 6 tháng 6 năm 2014 lúc 22:48Jun 6, 2014 at 22:48

Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

AbcaeffchenabcaeffchenAbcAeffchen

13.8K15 Huy hiệu vàng48 Huy hiệu bạc65 Huy hiệu Đồng15 gold badges48 silver badges65 bronze badges

2

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

Đã trả lời ngày 15 tháng 4 năm 2019 lúc 11:56Apr 15, 2019 at 11:56

0

Tôi đã viết chức năng đơn giản này để tạo định dạng này: 01:00:03

Giây luôn được hiển thị (ngay cả khi không). Biên bản được hiển thị nếu lớn hơn 0 hoặc nếu cần hàng giờ hoặc ngày. Giờ được hiển thị nếu lớn hơn 0 hoặc nếu cần ngày. Ngày được hiển thị nếu lớn hơn 0.

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

Examples:

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

Đã trả lời ngày 22 tháng 8 năm 2016 lúc 10:51Aug 22, 2016 at 10:51

Hướng dẫn php format number leading zero - số định dạng php đứng đầu số 0

Enigma Plusenigma PlusEnigma Plus

1.49621 huy hiệu bạc31 huy hiệu đồng21 silver badges31 bronze badges

Bạn luôn có thể lạm dụng loại tung hứng:

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

Điều này sẽ không hoạt động như mong đợi nếu

echo str_pad("1234567", 8, '0', STR_PAD_LEFT);
0 hoặc
echo str_pad("1234567", 8, '0', STR_PAD_LEFT);
1.

Đã trả lời ngày 28 tháng 1 năm 2019 lúc 14:02Jan 28, 2019 at 14:02

JGMJGMJGMJGMjgmjgm

3,8121 Huy hiệu vàng23 Huy hiệu bạc18 Huy hiệu đồng1 gold badge23 silver badges18 bronze badges

Làm thế nào để giữ các số không dẫn đầu trong PHP?

Bạn không thể giữ số 0 hàng đầu trong số nguyên.Bạn có thể giữ chúng trong một chuỗi hoặc thêm vào thời gian đầu ra, sử dụng Sprintf (), str_pad (), v.v. Hiển thị hoạt động trên bài đăng này.Vượt qua nó như một chuỗi;Các số không sẽ được duy trì.keep them in a string or add at output time, using sprintf() , str_pad() , etc. Show activity on this post. Pass it as a string; The zeros will be maintained.

Làm thế nào để thêm.00 trong PHP?

Định dạng đúng một số với số không hàng đầu trong PHP..
Sử dụng một chuỗi để thay thế số ..
Subr () để thêm các số không hàng đầu trong PHP ..
printf () / sprintf () để thêm số không hàng đầu trong PHP ..
str_pad () để thêm các số không hàng đầu trong PHP ..

Làm thế nào tôi có thể nhận được số 2 chữ số trong PHP?

Các hàm rand () hoặc mt_rand () có thể được sử dụng để tạo số ngẫu nhiên 2 chữ số trong PHP.Các ví dụ được đưa ra dưới đây cho thấy cách tạo số 2 chữ số bằng các hàm rand và mt_rand. can be used to Generate 2 Digit Random Number in PHP. Examples given below show how to Generate 2 Digit number using rand and mt_rand functions.

Làm cách nào để hiển thị 00 trong JavaScript?

Sử dụng đối tượng String () để chuyển đổi số thành một chuỗi.call Phương thức padStart () để thêm số không vào đầu chuỗi.Phương pháp Padstart sẽ trả về một chuỗi Zeros mới, được đệm mới. Call the padStart() method to add zeros to the start of the string. The padStart method will return a new, padded with leading zeros string.