array_push在foreach循环中不起作用

Mo.*_*Mo. 3 php arrays loops array-push

print_r($members) 就像这样下面的结果

Array ( [myname] => Array ( [userid] => 52 [age] => 46 )
Array ( [hisname] => Array ( [userid] => 22 [age] => 47 )
Array ( [yourname] => Array ( [userid] => 47 [age] => 85 )
Run Code Online (Sandbox Code Playgroud)

array_push()推动不在foreach循环中工作

foreach($members as $key => $item){
  // print "<br>" . $key ."<br>";
  array_push($members, '$key');
}
Run Code Online (Sandbox Code Playgroud)

结果期望像下面的代码一样 array_push()

Array ( [myname] => Array ( [userid] => 52 [age] => 46 [0] => myname)
Array ( [hisname] => Array ( [userid] => 22 [age] => 47 [0] => hisname)
Array ( [yourname] => Array ( [userid] => 47 [age] => 85 [0] => yourname)
Run Code Online (Sandbox Code Playgroud)

结果

警告:array_push()期望参数1为数组,在第126行的C:\ xampp\htdocs\index.php中给出null

警告:array_push()期望参数1为数组,在第126行的C:\ xampp\htdocs\index.php中给出null

警告:array_push()期望参数1为数组,在第126行的C:\ xampp\htdocs\index.php中给出null

Rik*_*esh 5

因为$arr似乎不是一个数组.将您的代码更改为

foreach($members as $key => $item){
   array_push($members[$key], $key); //or $members[$key][] = $key;
}
Run Code Online (Sandbox Code Playgroud)