Array remove empty entries

Removes empty entries from a array recursivly
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function array_remove_empty($arr){
    $narr = array();
    while(list($key$val) = each($arr)){
        if (is_array($val)){
            $val = array_remove_empty($val);
            // does the result array contain anything?
            if (count($val)!=0){
                // yes :-)
                $narr[$key] = $val;
            }
        }
        else {
            if (trim($val) != ""){
                $narr[$key] = $val;
            }
        }
    }
    unset($arr);
    return $narr;
}
//Example:
array_remove_empty(array(1,2,3''array()4)) => returns array(1,2,3,4)
X

Url: http://www.jonasjohn.de/snippets/php/array-remove-empty.htm

Language: PHP | User: ShareMySnippets | Created: Oct 16, 2013