我正在处理一个数据库,该数据库有一串以前导0开头的序列号。使用PHP八进制和字符串转换
所以序列号可以像00032432或56332432.
问题是用PHP我不明白与八进制转换系统是如何工作的。
一个具体的例子是,我试图转换和比较所有这些基于整数的字符串。
是否有可能将八进制数(例如00234)转换为像“00234”这样的字符串,以便我可以比较它?
编辑 - 添加一个特定的例子。我希望能够像下面那样在串行上运行str函数。
$serial = 00032432; // coming from DB
if(substr($serial, 0, 1) == '0') {
// do something
}
我不明白你的确切问题吗?值来自一个字符串,所以它不应该被视为一个八进制,直到你用它做了一些数学运算,比如在一个加法中使用它。你应该能够在字符串比较中使用它,不用担心。或者我误解了一些东西? – 2010-03-22 21:00:39
在使用和比较之前,来自db的值是否分配给变量有什么关系?因为我无法像使用数字或没有前导零的字符串那样操纵这些变量。 – krx 2010-03-22 21:08:13