【发布时间】:2013-02-18 17:58:35
【问题描述】:
尝试对一些哈希使用简单的“版本控制”系统,我执行以下操作:
$last_version = '009';
$increment = '001';
$result = $last_version + $increment;
var_dump($result);
我希望:string(010) 但我得到了int(10),在我跳入if 和str-pad 之前,我想知道是否有任何其他方法可以保存所需的格式?
【问题讨论】:
-
之后需要将其转换为字符串。
-
为什么不存储一个 int 然后格式化输出呢? $版本 = 1; $版本++; echo sprintf('%03d', $version)
? As for your str/int, you're forcing PHP to cast those strings to ints since you're using+`,就是加法。 -
没有理由期待字符串(010)。如果你想组合字符串,你会得到“009001”,否则,如果你想添加他们的数值,你会使用整数。从一个转换到另一个很容易,但只需尝试了解其中的差异,否则您将来可能会因为一些微不足道的事情而花费数小时寻找错误。