php - Laravel - 从多维数组中删除具有 NULL 值的元素

标签 php laravel laravel-5.3

我正在使用 Laravel 5.3

我有一个多维数组,例如:

Array
(
    [id] => 37141
    [last_done_on] => []
    [children] => Array
        (
            [0] => NULL /* This must be removed */
            [1] => Array
                (
                    [id] => 37142
                    [last_done_on] => Array()
                    [children] => Array()
                )

            [2] => Array
                (
                    [id] => 37143
                    [last_done_on] => Array()
                    [children] => Array
                        (
                            [0] => Array
                                (
                                    [id] => 37144
                                    [last_done_on] => Array()
                                    [children] => Array()
                                )
                            [1] => Array
                                (
                                    [id] => 37145
                                    [last_done_on] => Array()
                                    [children] => Array()
                                )
                        )
                )
            [3] => Array
                (
                    [id] => 37157
                    [last_done_on] => Array()
                    [children] => Array
                        (
                            [0] => Array
                                (
                                    [id] => 37158
                                    [last_done_on] => Array()
                                    [children] => Array()
                                )
                            [1] => Array
                                (
                                    [id] => 37159
                                    [last_done_on] => Array()
                                    [children] => Array
                                        (
                                            [0] => NULL  /* This must be removed */
                                        )
                                )
                        )
                )
        )
)

而且我想删除 NULL元素。所以结果应该是这样的:

Array
(
    [id] => 37141
    [last_done_on] => []
    [children] => Array
        (
            [0] => Array
                (
                    [id] => 37142
                    [last_done_on] => Array()
                    [children] => Array()
                )

            [1] => Array
                (
                    [id] => 37143
                    [last_done_on] => Array()
                    [children] => Array
                        (
                            [0] => Array
                                (
                                    [id] => 37144
                                    [last_done_on] => Array()
                                    [children] => Array()
                                )
                            [1] => Array
                                (
                                    [id] => 37145
                                    [last_done_on] => Array()
                                    [children] => Array()
                                )
                        )
                )
            [2] => Array
                (
                    [id] => 37157
                    [last_done_on] => Array()
                    [children] => Array
                        (
                            [0] => Array
                                (
                                    [id] => 37158
                                    [last_done_on] => Array()
                                    [children] => Array()
                                )
                            [1] => Array
                                (
                                    [id] => 37159
                                    [last_done_on] => Array()
                                    [children] => Array
                                        (
                                        )
                                )
                        )
                )
        )
)

如何做到这一点?

最佳答案

在集合中,使用过滤器

some_collection->filter(function($value, $key) {
    return  $value != null;
});

关于php - Laravel - 从多维数组中删除具有 NULL 值的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42829169/

相关文章:

javascript - PHP 从数据库中检索新图像

php - Laravel 从数据库中排序数据

php - Laravel 5.2 - 违反完整性约束 : 1452 Cannot add or update a child row: a foreign key constraint fails

php - Encrypter.php 中未定义函数 openssl_encrypt()

javascript - 如何在参加在线考试时完全禁用浏览器的后退按钮?

php - 使用 CodeIgniter 创建 XML

mysql - 在子表中插入新行后查询父表中的自动递增id

session - Laravel 5.3 session cookie 未在浏览器中创建

php - 如何在 PHP 中创建受密码保护的存档文件?

php - 编辑数据库不适用于添加的代码