请解释一下:)
如果我跑
$custId = getExternalId();
echo $custId . "\n"; // Prints foobar_16262499_1
$serial = '';
$custId = explode('_', $custId);
var_dump($custId);
$custId = $custId[1];
$serial = $custId[2];
die("custId: $custId serial: $serial\n");
我明白了
custId: 16262499 serial: 2
这是不正确的。序列号应该是 1。但是如果我将分配顺序更改为
$custId = getExternalId();
echo $custId . "\n"; // Prints foobar_16262499_1
$serial = '';
$custId = explode('_', $custId);
var_dump($custId);
$serial = $custId[2]; // Change order here!!!
$custId = $custId[1];
die("custId: $custId serial: $serial\n");
它有效并给了我
custId: 16262499 serial: 1
为什么?
在这两种情况下,数组的 var_dump 都会产生相同的输出:
array(3) {
[0]=>
string(4) "foobar"
[1]=>
string(8) "16262499"
[2]=>
string(1) "1"
}
我正在运行 PHP/5.3.3 ZendServer
SMACKS HEAD ...我怎么能错过明显的:)...