在php中的foreach循环中增加数组元素?

Tar*_*wal 5 php arrays php-internals

请考虑以下代码:

<?php
$arr = array();
$arr['b'] = 'book';
foreach($arr as $key=>$val) {
   print "key=>$key\n";
   if(!isset($arr['a']))
      $arr['a'] = 'apple';
}
?>
Run Code Online (Sandbox Code Playgroud)

它没有显示'a'.foreach如何使用hash-table(数组)来遍历每个元素.如果实现列表,为什么我不能在运行时添加更多?

请不要告诉我,我可以使用基于数字的索引来帮助计算.

小智 0

我认为你需要存储数组元素继续狡猾

尝试

<?php
$arr = array();
$arr['b'] = 'book';
foreach($arr as $key=>$val) {
   print "key=>$key\n";
   if(!isset($arr['a']))
      $arr['a'][] = 'apple';
}
print_r($arr);
?>
Run Code Online (Sandbox Code Playgroud)