PHP关联数组

Uma*_*dil 0 php arrays associative

我有一个数组

$arrTest = array('val1','val2','val3','val4');
$arrTest['lastKey'] = 'Last Key';
foreach($arrTest as $key => $val) {
  if($key == 'lastKey') {
     echo "last found";
  }
}
Run Code Online (Sandbox Code Playgroud)

上面的代码不起作用.我在数组中添加了关联元素.可能是原因吗?

cod*_*ict 6

更改=====在:

if($key == 'lastKey')
Run Code Online (Sandbox Code Playgroud)

您现有的代码回声last found两次,一次是键0,一次是键lastKey.

使用返回true 比较整数0和字符串!!'lastKey'==

从PHP手册:

字符串转换为数字

在数值上下文中计算字符串时,结果值和类型将按如下方式确定.

如果字符串包含任何字符'.','e'或'E',则将其评估为float.否则,它将被评估为整数.

该值由字符串的初始部分给出.如果字符串以有效数字数据开头,则这将是使用的值.否则,该值将为0(零).有效数字数据是可选符号,后跟一个或多个数字(可选地包含小数点),后跟可选指数.指数是'e'或'E',后跟一个或多个数字.