删除字符串(1)“”

时间:2012-06-11 22:01:02

标签: php foreach

我是从列表中得到的:

one     "\n"
        "\n"
two     "\n"

当我拿到名单时,我会爆炸:

     $list_explode_nl = explode("\n", $list);

var_dump显示:

array(3){[0] => string(5)“one”[1] => string(1)“”[2] => string(4)“two”}

我的代码:

  foreach ($list_explode_nl as $k => $v) {
     if ($v == NULL || $v == ' ') {
        unset($list_explode_nl[$k]);
     }
  }

当字符串像[1]时,我想摆脱一个元素。怎么样?

2 个答案:

答案 0 :(得分:2)

尝试:

foreach ($list_explode_nl as $k => $v) {
    if ($v == NULL || trim($v) == '') {
        unset($list_explode_nl[$k]);
    }
 }

我认为[1]元素是换行符(或可能是制表符),因此它不等于' 'trim应该照顾它。

答案 1 :(得分:1)

$list_explode_nl = array_filter(array_map('trim',$list_explode_nl));

$list_explode_nl = array_values(array_filter(array_map('trim',$list_explode_nl)));

如果你想重置索引