首页 > 解决方案 > 如果 PHP 中的值为空,如何取消设置数组

问题描述

如果多维数组中的数组值为空,我正在尝试取消设置数组。这是我的数组:

Array
    (
        [main] => Array
            (
                [0] => Array
                    (
                        [title] => df
                        [link] => fdf
                    )
    
                [1] => Array
                    (
                        [title] => 
                        [link] => 
                    )
    
                [2] => Array
                    (
                        [title] => 
                        [link] => 
                    )
    
            )
    
    )

我的 PHP 代码:

foreach($array as $key => $value){
  if(empty($value)){
      unset($menuDataJson[$key]);
  }
  
}

但它不起作用...

标签: php

解决方案


问题是你遍历了根数组,它只有一个元素'main'。下面的代码片段应该可以解决问题。

<?php

$array = [
    'main' => [
        [
            'title' => 'df',
            'link'  => 'fdf',
        ],
        [
            'title' => '',
            'link'  => '',
        ],
        [
            'title' => '',
            'link'  => '',
        ],
    ]
];


foreach ($array['main'] as $key => $value){
    if (empty($value['title'])){
        unset($array['main'][$key]);
    }
}

var_dump($array);

推荐阅读