【问题标题】:How to remove null values in Array PHP如何删除数组 PHP 中的空值
【发布时间】:2017-06-16 19:48:06
【问题描述】:

我尝试使用 Elastic Search 和 PHP 进行查询。

但是有些数据可能是空的,不能添加到数组中。这是我的数组:

        $query = $this->elasticParams['body'] = [
            'sort' => [
                'price' => 'asc'
            ],
            'query' => [
                'bool' => [
                    'must' => [empty($should) ? null : $should, $range],
                ]
            ],
            'size' => 1000
        ];

但是什么时候做 dd();显示值为 null 的位置,但我的查询无效。

array:3 [▼
  "sort" => array:1 [▶]
  "query" => array:1 [▼
    "bool" => array:1 [▼
      "must" => array:2 [▼
        0 => null
        1 => array:1 [▶]
      ]
    ]
  ]
  "size" => 1000

如何在我的查询工作中删除这个空位?

【问题讨论】:

标签: php arrays elasticsearch


【解决方案1】:

如果您想从数组中删除所有空值,请尝试以下操作:

$my_array = array('sort' => array(
                'price' => 'asc'
            ),
            'query' => array(
                'bool' => array(
                    'must' =>  array(0 => null,
                                     1 => array(12),
                                    ),
                                ),
                            ),
            'size' => 1000
        );

function array_remove_null($input){
    foreach ($input as &$value){
        if (is_array($value)){
            $value = array_remove_null($value);
        }
    }
    return array_filter($input);
}

$my_array = array_remove_null($my_array);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-05
    • 1970-01-01
    • 2013-07-25
    相关资源
    最近更新 更多