转换01,02,03,04 .. 09到1,2,3,4 ... 9

时间:2009-12-04 15:08:00

标签: php int

Hay怎么转换

01 to 1
02 to 2

一直到9?

由于

8 个答案:

答案 0 :(得分:23)

我假设输入是一个字符串?

$str = "01";
$anInt = intval($str);

您可能认为前导0意味着将其解释为八进制,与许多其他语言/ API一样。然而,intval的第二个参数是一个基础。此默认值为10.这意味着09-> 9。请参阅intval页面上的第一条评论,该评论指出,如果您将0作为基数传入,则可能会发生基本扣除。

答案 1 :(得分:2)

$x="01";
$x=+$x;

$x="02";
$x=+$x;

...

$x=+"01";

应该适用于int和string

答案 2 :(得分:0)

$str = "05";
$last = $str[1]; 

答案 3 :(得分:0)

$i = substr($input, 1, 1);

答案 4 :(得分:0)

如果你想使用通用正则表达式解决方案:'s / [0] ([0-9]) / \ 1 /'(根据需要添加锚点)

答案 5 :(得分:0)

$str='05';

if(strpos($str,'0')==0 && strpos($str,'0') != false ){ 
 $new = intval(substr($str,1));
}

答案 6 :(得分:0)

改为(int)$str;。它比intval()快4倍。

答案 7 :(得分:0)

你可以使用预定义的php函数。

intval() 

对于Ex:

 $convert =  intval(01);
 echo $convert ;

它将打印1(一);