【发布时间】:2011-06-05 23:29:36
【问题描述】:
我有一个简单的关联数组。
$a = array("a"=>"b", "c"=>"d");
我想检查数组中是否存在键“1”,例如
isset($a["1"]);
这个字符串被视为一个整数,所以
echo $a["1"]; //prints "d"
如何让它把它当作一个字符串?
我不想使用 array_key_exists 或 in_array,因为我的基准测试显示 isset 会快很多。
【问题讨论】:
-
.. 简单的答案是,不要对关联数组使用字符串整数。添加前缀,或完全更改您的命名约定。为什么要创建一种变通方法来适应这种可预防的设计选择?
-
我正在从文本中解析单词并检查它们的索引,其中一些将是数字,所以我必须这样做。
-
-1 假问题,php 不是这样的。
-
@chris,你是什么意思?
-
@Pacerier
echo $a["1"];不打印"d"。
标签: php arrays associative-array isset