-1

我需要检查数组中是否只剩下逗号和空格,以及是否是清空或销毁数组的情况。我怎样才能做到这一点?

例如我有一个这样的数组:

$array = (, , , ,)
4

2 回答 2

1

看看我的功能:

// my magic function
function array_contains_only(&$array, &$matches) {
    $tmp = 0;

    // loop through array
    foreach($array as $key => $val) {
        // check if value matches one of the matches
        // if so, increment $tmp
        if(in_array($val, $matches)) $tmp++;
    }

    // check if $tmp equals the length of $array,
    // if so, the array contains $matches only
    return (count($array) === $tmp);
}

用法:

// dummy arrays
$demo1 = array(' ', ',', ' ', ',', ',');
$demo1 = array(' ', ',', ' ', ',', ',', '123');

// characters to match
$chars = array(' ', ',');

// check $demo1
if(array_contains_only($demo1, $chars)) $demo1 = array(); // create new array

// check $demo2
if(array_contains_only($demo2, $chars)) $demo2 = array(); // create new array

print_r($demo1); // new, empty array
print_r($demo2); // old array
于 2013-01-22T11:08:31.897 回答
0
$array = array(NULL, NULL, NULL, NULL, NULL);

$result = array_filter(
    $array,
    function ($value) {
        return !is_null($value);
    }
);

var_dump($result);
于 2013-01-22T11:12:31.377 回答