如何从数组中删除仅空白元素?

| 如何删除数组中仅包含空格的所有元素,而不删除像remove0ѭ这样的元素中只包含空格的数组,而不是像
\"   \"
这样的空数组元素? 谢谢。
已邀请:
preg_grep()
是你的朋友。
$array = array(\"This\", \" \", \"is\", \" \", \"a\", \" \", \"test.\");

$array = preg_grep(\'/^\\s*\\z/\', $array, PREG_GREP_INVERT);

var_dump($array);
键盘。 根据
\\s
字符类(空格,制表符和换行符),这将删除字符串为空或仅由空格组成的所有数组成员。 输出量
array(4) {
  [0]=>
  string(4) \"This\"
  [2]=>
  string(2) \"is\"
  [4]=>
  string(1) \"a\"
  [6]=>
  string(5) \"test.\"
}
$arr = array(\"This\", \" \", \"is\", \" \", \"a\", \" \", \"test.\");
$result = array();
for($arr as $x) {
     if(!preg_match(\"/^\\s*$/\", $x)) $result[] = $x;
}
$arr = $result;
此代码利用了
array_filter
的回调参数。它将循环数组,对值调用
trim()
,并在结果值等于ѭ9remove时将其删除。 (一个空字符串将)
$a = array_filter($a, \'trim\');
$array = array(\'foo\',\'  \',\'bar \');

foreach ($array as $key => $value) {
    if (trim($value) == \'\') unset($array[$key]);
}
转储时的数组包含:
array(2) {
  [0]=>
  string(3) \"foo\"
  [2]=>
  string(4) \"bar \"
}
foreach($ arr as $ key => $ value) {
 if($value=\" \")

  {
unset($ arr [$ key]);
/* optional */
array_values($ arr);
  }

}

要回复问题请先登录注册