4

嗨,我需要在 $number 中保存一个 010 号码,如果我喜欢这个 php 将删除起始 0

    $number = 010 

这个的回声将返回 10 我怎样才能让它不删除最初的 0

BR马丁

4

3 回答 3

6

将其用作字符串:

$number = '010';
于 2013-10-14T05:55:51.633 回答
4

使用str_pad()功能。

echo str_pad('10',3,'0',STR_PAD_LEFT)

http://php.net/manual/en/function.str-pad.php

于 2013-10-14T05:56:50.710 回答
4

请记住,以 0 开头的数字也可以被 PHP 编译器视为八进制数字表示法,因此如果您想使用十进制数字,只需使用:

$num = '010';

通过这种方式保存号码,可以将其存储在数据库中并像任何其他号码一样进行操作。(感谢 PHP 是一种非常松散类型的语言。)

另一种使用方法是:

将号码另存为$num = 10;

稍后在打印值时,您可以使用sprintf,例如:

sprintf("%03d", $i);

这将以 3 位格式打印您的号码,因此将自动添加 0。

另一种方法:

<?php
$num = 10;
$zerofill = 3;

echo str_pad($num, $zerofill, "0", STR_PAD_LEFT);

/* Returns the wanted result of '010' */
?>

您可以查看可用的各种选项并做出决定。上面给出的每种方法都会为您提供正确的输出。

于 2013-10-14T05:58:49.153 回答