代码之家  ›  专栏  ›  技术社区  ›  Rosenberg

PHP爆炸数组,如何识别分隔符?

  •  1
  • Rosenberg  · 技术社区  · 8 年前

    这是代码:

    $arr=explode(", ",$this->maList);
    

    maList返回输入的邮件:

    "test@test.com, test2@test2.com"
    

    然而,我想让它知道我是否在逗号后使用了空格,还是没有空格。因为如果我输入这个:

    "test@test.com,test2@test2.com"
    

    则它成为单个数组元素。

    在这种情况下我能做什么?

    2 回复  |  直到 8 年前
        1
  •  4
  •   Devon Bessemer    8 年前

    我将给出另一个答案,对于那些在字符串中有空格的情况。将trim函数映射到数组项将从开头或结尾移除任何额外的空白,但不会从中间移除。

    $arr = explode(",", $this->maList);
    $arr = array_map("trim", $arr);
    

    如果您有:

    "Test Name <test@test.com>"
    
        2
  •  2
  •   Funk Forty Niner    8 年前

    我在写问题的时候想到了答案,其实很简单。因为我在抓取电子邮件,所以忘记空白,所以我在创建数组时将其切断。

    $arr=explode(",",str_replace(' ', '', $this->maList));