对于我的网站,我需要执行以下操作
$value = "1|22";
$explode = explode("|",$value);
$a = $explode[0];
$b = $explode[1];
这将按预期返回 a 和 b 作为 1 和 22。但我需要他们返回 $a 作为 00001 和 $b 作为 00022。因此,如果它们包含少于 5 个字符,我想添加 0 作为前缀,使其成为五位数。我怎样才能做到这一点?
$a = str_pad($explode[0], 5, '0');
$b = str_pad($explode[1], 5, '0');
使用 PHP5.3,您可以0
像这样添加
$explode = array_map (function ($entry) {
return str_pad($entry, 5, '0');
}, $explode);
并分配
list($a, $b) = $explode;
完全没有(还是php5.3)
list($a, $b) = array_map (function ($entry) {
return str_pad($entry, 5, '0');
}, explode('|', $value));
另一种方法。
$value = "1|22";
$explode = explode("|",$value);
$a = sprintf( '%1$05d', $explode[0] );
$b = sprintf( '%1$05d', $explode[1] );