PHP удаляет пустые, нулевые ключи/значения массива, сохраняя при этом ключи/значения, иначе не пустые/нулевые

У меня есть массив, содержащий около 12 потенциальных пар ключ/значение. Это основано на _POST/_GET

Ключи не являются числовыми, как в 0-n, и мне нужно сохранить ключи с их значениями, где это применимо. Моя проблема в том, что я знаю, что иногда будет передаваться ключ, где значение равно null, пусто или равно ''. В этом случае я хочу обрезать эти ключи перед обработкой моего массива. Поскольку бег по линии без чего-то там сломает мой сценарий.

Некоторое время назад я то ли сделал, то ли нашел эту функцию (правда, не помню, какая она была в моем арсенале какое-то время).

function remove_array_empty_values($array, $remove_null_number = true)
    {
        $new_array = array();
        $null_exceptions = array();
        foreach($array as $key => $value)
        {
            $value = trim($value);
            if($remove_null_number)
            {
                $null_exceptions[] = '0';
            }
            if(!in_array($value, $null_exceptions) && $value != "")
            {
                $new_array[] = $value;
            }
        }
        return $new_array;
    }

То, что я хотел бы сделать, очень похоже на это, однако это хорошо работает с массивами, которые могут иметь n-n ключевых значений, и я не зависим от ключа, а также от значения, чтобы определить, что, что, где и когда. Поскольку приведенное выше просто удалит все в основном, просто перестроит массив. Где я застрял, пытаясь понять, как имитировать вышеуказанную функцию, но где я сохраняю нужные мне ключи.

9
задан chris 5 March 2012 в 14:11
поделиться