开发者社区 问答 正文

PHP5.3不识别双引号的问题? 400 报错

PHP5.3不识别双引号的问题? 400 报错 PHP的版本升级为5.3+以后,代码不能正常运行。报类似如下错误

Parse error: syntax error, unexpected T_STRING 。。。。

查了一下,发现凡是用到双引号的地方都出错。
就算写一句 $a = "abc";  都出错。改成 $a = 'abc'; 就没问题了。

不知道这个问题该怎么解决(⊙o⊙)?

展开
收起
爱吃鱼的程序员 2020-06-22 23:03:30 504 分享 版权
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    单独开个空白文件作测试呢?
    ######谢谢你的提醒,单独开了一个文件测试,没问题。应该是代码的问题。######感觉是前文有引号没结束######有可能是,我按这个思路找找######估计你用的是 Netbeans,这东西会自作聪明,把括号,引号之类的删掉一般######我也不太了解都用了什么。不过,好像没有Netbeans--因为我还没他们提起过这个名字。######这绝对不是PHP的问题~######应该是代码的问题,可能是因为低版本的PHP不报相应的错,现在的PHP5.3严厉了,所以问题就暴露出来了。######

    太奇怪了!!!!

    调试了半天,发现不可以用 ”能“这个汉字!!

    只要某个字符串定义时,值里面有”能”这个字,那后面就不可以用单引号或者双引号。例如

    $a='能';的后面的代码中只要出现单引号就出错。
    $a="能";的后面的代码中只要出现双引号就出错。

    怪死了!!

    ######文件编码。
    ######我也觉得是不是可以改改编码解决问题。可以,应该用什么编码呢?######你能把报错信息完整贴上来么######<divclass="ref">

    引用来自“leo108”的答案

    <divclass="ref_body">你能把报错信息完整贴上来么<divclass="a_body">

    文件名:test.php

    文件内容:

    <preclass="brush:php;toolbar:true;auto-links:false;"><?php$a='abc能';$c='fsdf';echo$a;?>

    报错信息:

    PHPParseerror: syntaxerror,unexpectedT_STRINGin/home/test/test.phponline3######

    暂时的结论:字符串变量的值的最后一个字是”能“时,会导致问题。

    暂时通过把所有以”能“结尾的字符串的”能“后面加个空格来解决了。

    不过,应该有更好的方法解决,暂时先这样了。

    ----不知道这算不算一个PHP的bug

    ######

    <spanstyle="font-size:18px;color:#e53333;">php5.3.1没有出现你所说的问题

    <spanstyle="color:#e53333;font-weight:bold;font-size:18px;">

    <spanstyle="font-size:18px;color:#e53333;">php5.4.3也没有出现你说的问题

    <spanstyle="color:#e53333;font-weight:bold;font-size:18px;">

    <spanstyle="color:#e53333;font-size:18px;">以上均使用UTF-8编码

    <spanstyle="color:#e53333;font-size:18px;"><spanstyle="font-size:32px;">个人觉得没道理出现这样的问题。

    ######我把我的测试代码改成UTF-8格式的,问题解决了。UTF-8应该是默认的吧。有什么地方可以设置一下让我的代码可以采用其他格式的吗?######我把我的测试代码改成UTF-8格式的,问题解决了。UTF-8应该是默认的吧。有什么地方可以设置一下让我的代码可以采用非其他格式的吗?

    2020-06-22 23:03:49
    赞同 展开评论
问答分类:
PHP
问答标签:
问答地址: