如何从php中的数组中删除具有一定长度的项目

时间:2016-12-23 09:27:42

标签: php arrays

我现在尝试从阵列中移除一定长度的值,我似乎无法完成它。 我已经使用内置函数删除了空格和emtpy数组,但我还想从数组中删除少于30个字符的项目。

我的代码是:

$data = array();
$cells = $dom->getElementsByTagName('td');
foreach($cells as $node) {
    foreach($node->childNodes as $child) {
        $data[] = array($child->nodeName => $child->nodeValue); 
        $data = array_map('array_filter', $data);
        $data = array_filter($data);
    }
}

1 个答案:

答案 0 :(得分:1)

我会将你的功能改为:

foreach($cells as $node){
    foreach($node->childNodes as $child) {
        // check the length is greater than or equal to 30
        if(strlen($child->nodeValue) >= 30 ){

            $data[ $child->nodeName ] =  $child->nodeValue; 

            $data[ $child->nodeName ] = array_map('array_filter', $aTempData);
            $data[ $child->nodeName ] = array_filter($aTempData);

        }
    }
}

如果您想从开始数组中删除,可以使用unset()与原始方法一样