PHP数组,数组索引是否区分大小写?

时间:2009-10-02 18:52:17

标签: php arrays case-sensitive

我不知道这是否是一个问题但想开始考虑它。

问题:

PHP数组索引区分大小写”?

示例:

$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse","A"=>"Dog","B"=>"Cat","C"=>"Horse");
print_r($a);

结果:

Array ( [a] => Dog [b] => Cat [c] => Horse [A] => Dog [B] => Cat [C] => Horse ) 

我已经运行了几个例子,这似乎是正确的,只是想确保我正确看到这一点。

6 个答案:

答案 0 :(得分:53)

是。它们区分大小写。

在您的示例中,PHP数组索引充当hash tables。大写字母“A”和小写字母“a”具有不同的哈希值,因此它们将是不同的索引。

答案 1 :(得分:8)

答案:

是的,他们是。

答案 2 :(得分:5)

是的,就像变量名(但不是函数名)一样,哈希键区分大小写。

答案 3 :(得分:1)

这很容易自行检查。

$dogs = array('Dog' => 'Wuff', 'dog' => 'wuff', 'DOG' => 'WUFF');
var_dump($dogs);

答案 4 :(得分:1)

尽管大多数人都熟悉的系统并不是这样(Windows),但在接近任何新的语言或环境时,它是一个合理的假设,它会区分大小写。 PHP与几乎所有其他常用的语言和环境一起使用。脑海中浮现的最值得注意的例外(除了前面提到的Windows)是SQL和Delphi(Pascal)。

答案 5 :(得分:1)

就像其他人提到的那样,“是的,他们是”。

例如$ a ['id']与$ a ['ID']

不同