【问题标题】:Handling array values using specific array element使用特定数组元素处理数组值
【发布时间】:2014-09-24 05:35:48
【问题描述】:

我有一个这样的数组值。我试过array_search,它没有用。 我想要的是仅过滤具有状态值的数组值。

输出

    Array
    (
    [1] => Array
    (
    [author] => Author1
    [book] => Book1
    [status] => 1
    )

    [2] => Array
    (
    [author] => Author2
    [book] => Book2
    )

    [3] => Array
    (
    [author] => Author3
    [book] => Book3
    [status] => 1
    )
    )

预期输出

Array
    (
    [1] => Array
    (
    [author] => Author1
    [book] => Book1
    [status] => 1
    )

    [3] => Array
    (
    [author] => Author3
    [book] => Book3
    [status] => 1
    )
    )

如果预期的输出具有正确的数字序列,我会更高兴。在上述情况下,有两个数组,数组编号为 [1] 和 [3] 。如果可能,我需要将其设为 [1] 和 [2]。

任何帮助都会非常有用。

谢谢, 金兹

【问题讨论】:

    标签: php arrays sorting arraylist multidimensional-array


    【解决方案1】:

    你可以这样做

    foreach($my_array as $arr) {
        if(isset($arr['status']) && $arr['status'] != '') {
            $temp_array[] = $arr;
        }
    }
    print_r($temp_array);
    

    【讨论】:

    • Gautam - 有人投了反对票。不知道为什么。你能支持我的问题吗;)拜托。我已经标记了你的答案;)
    【解决方案2】:

    你可以使用array_filter

    $array = array(['status' => 1], [], ['status' => 1]);
    
    $result = array_filter($array, function($item)
        {
        return !empty($item['status']);
        });
    
    var_dump($result);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-08
      • 1970-01-01
      • 2019-02-09
      • 2014-08-06
      • 2019-07-05
      • 2018-04-01
      • 2013-07-12
      • 2021-05-24
      相关资源
      最近更新 更多