PHP关联数组
|
我有一个数组
$arrTest = array(\'val1\',\'val2\',\'val3\',\'val4\');
$arrTest[\'lastKey\'] = \'Last Key\';
foreach($arrTest as $key => $val) {
if($key == \'lastKey\') {
echo \"last found\";
}
}
上面的代码不起作用。我在数组中添加了关联元素。可能是原因吗?
没有找到相关结果
已邀请:
7 个回复
戊袱
这是因为PHP将
评估为true。
盛虱
更改为
:
您现有的代码回显
两次,一次对键
,一次对键
。 使用
比较整数
和字符串
返回true! 从PHP手册中: 字符串转换为数字 在字符串中对字符串求值时 数字上下文,结果值 和类型确定如下。 该字符串将被评估为 如果包含任何 字符\'。\',\'e \'或\'E \'。 否则,它将被评估为 整数。 该值由初始 字符串的一部分。如果字符串 以有效的数字数据开头,这 将是使用的值。否则, 值将为0(零)。有效数字 数据是可选符号,其后是 一个或多个数字(可选 包含小数点),然后是 通过可选的指数。指数 是\'e \'或\'E \',后跟一个或 更多数字。
敦肌
进行比较。因为将键“ 7”与字符串“ 8”进行比较时,字符串将转换为整数,并返回错误的结果。 http://codepad.org/5QYIeL4f
阅读有关差异的更多信息:http://php.net/manual/zh/language.operators.comparison.php
需复
实际上匹配两次:一次为0,一次为您的特殊元素。
芦歉竭皑
翰冒绢县
伞腹
:
您也可以使用
,但请注意,如果与键关联的值为
,则它将返回false。