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

将引号与字符串分开

  •  1
  • ahmed  · 技术社区  · 14 年前

    下面的代码一直给我这个错误

    分析错误:语法错误,中有意外的t_变量…

    ?

       $query_string = 'this is a test... "this is in quotes" mmm..chicken burgers... yummm...';
       preg_match_all("/\".*\"|[^\s]*/",  ­ $query_string, $matches);
       echo "Matches:";
       foreach($matches[0] as $token) {
              echo $token . "<br />";
       }
    

    就是这样 web page

    2 回复  |  直到 11 年前
        1
  •  0
  •   Luke Stevenson    14 年前

    您是否查看了您注意到的错误消息中提到的行? 是否查看了该行前面的行,以确保每行都以分号“;”结尾,并且使用了正确的运算符来联接变量“.”等?

    这听起来像是一个简单的PHP语法错误。

    我刚刚在我的xampp服务器上运行了以下代码,没有明显的错误消息:

    <?php
    
    $query_string = 'this is a test... "this is in quotes" mmm..chicken burgers... yummm...';
    preg_match_all("/\".*\"|[^\s]*/", $query_string, $matches);
    echo "Matches:";
    foreach($matches[0] as $token) {
      echo $token . "<br />";
    }
    
        2
  •  0
  •   ash108    14 年前

    正如上校所指出的,你的代码中隐藏了破折号(173十进制,十六进制00ad)。 $query_string . 去掉它,你会好得多。

    更新:准确地说,您有[逗号]、[空格]、[空格]、[隐藏短划线]、[空格]、'$query_string'。