我正试图从PHP中的一个数字中删除前导0。问题是,我可以在每个数字中都这样做,但当我达到数字09时,所做的转换是不正确的。它给了我0,而不是9。
我已经尝试了我在网上能找到的每一个解决方案,但每一个都以数字9失败。
现在我的代码是:
function removezeros($value)
{
switch ($value){
case 01: return 1;
case 02: return 2;
case 03: return 3;
case 04: return 4;
case 05: return 5;
case 06: return 6;
case 07: return 7;
case 08: return 8;
case 09: return 9;
}
return $value;
}
$month = 09;
echo removezeros($month);
我还尝试将数字定义为整数,如下所示:
$month = (int)$month;
并返回带有该代码$month=intval($month)
的int值,但仍然为零。
我做错了什么?我该如何解决?
由于您以八进制表示法提供了一个值,因此可以先将其强制转换为字符串,只需修剪前导零。ltrim
将在修剪前将任何数字强制转换为字符串:
$month = ltrim($month, '0'); // string
或者:
$month = intval(ltrim($month, '0')); // integer