我有一个看起来像这样的三维数组
Array(
[Group 1] => Array
(
[0] => Array
(
[category] => Group1
[firstname] => John
[lastname] => Johns
[image] => /mysite.etc/jj.jpg
)
[1] => Array
(
[category] => Group1
[firstname] => John
[lastname] => James
[image] => /mysite.etc/jj2.jpg
)
)
[Group 2] => Array
(
[0] => Array
(
[category] => Group2
[firstname] => John
[lastname] => Jackson
[image] => NULL
)
[1] => Array
(
[category] => Group2
[firstname] => John
[lastname] => Jimson
[image] => /mysite.etc/jj4.jpg
)
)...etc)
Run Code Online (Sandbox Code Playgroud)
我正在尝试遍历数组并删除people在[image]单元格中没有值的任何(即数组的第二级).
我试过了
foreach($MyArray as $Key=>&$group){
foreach($group as &$staff){
if(!file_exists($staff['image'])){
unset($staff);
}
}
}
Run Code Online (Sandbox Code Playgroud)
但这不会删除没有图像的数组项.循环正确地识别没有图像的人员,好像我包含一些代码以将它们回显到页面上,这是有效的.它只是没有从$MyArray阵列中取消它们.
谁能帮我实现这个目标?
foreach($MyArray as $Key=>$group){
foreach($group as $k=>$staff){
if( !file_exists($staff['image'])) {
unset($MyArray[$Key][$k]);
}
}
}
Run Code Online (Sandbox Code Playgroud)
//你应该知道$ group和$ staff是临时变量