【发布时间】:2013-05-25 14:13:16
【问题描述】:
考虑这个例子
<?php
$test = array("00"=>"A","B","C","D","E");
print_r($test);
echo "<br>";
echo $test[0];
echo "<br>";
echo $test["0"];
echo "<br>";
echo $test["00"];
echo "<br>";
echo $test[00];
?>
输出
数组([00] => A [0] => B [1] => C [2] => D [3] => E)
B
B
一个
B
Q1.为什么$test[0]与$test["0"]相同,而$test[00]与$test["00"]不同
Q2. 如果 Q1 的答案是因为00 = 0 的数字,那么为什么这个数组有一个索引为00 而另一个索引为0?
Q3. 如果您无法使用$test[0] 访问$test["00"],那么您如何知道哪个索引是数字,哪个是字符串?如果两者都只是数字
编辑
根据目前的答案,我心中还有另一个问题。问题 4 来了。
Q4. 为什么if(00==0) 为真而if(07==7) 为假? (用于数组索引)
Q5。
$test = array("00"=>"A","0"=>"B","000"=>"C","0000"=>"D","00000"=>"E");
echo $test[0];
为什么输出是B,不应该是A?因为这是数组中的第一个元素,在第 0 个位置
【问题讨论】:
标签: php arrays numbers indexing