我现在尝试从阵列中移除一定长度的值,我似乎无法完成它。 我已经使用内置函数删除了空格和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);
}
}
答案 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()
与原始方法一样