当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP syntax error, unexpected $end 错误的一种原因及解决

PHP
PHP框架:CodeIgniter v1.7.2发布
PHP教程:strtotime函数用法
PHP实例:实现超级简单的MVC结构
PHP教程:ImageTTFText函数实现图像加文字水印
php项目打包
轻松修复Discuz!数据库
PHP+MYSQL+Flash做留言本
精通php的十大要点(上)
用PHPnow搭建PHP+MYSQL网站开发环境
网页收集20个方便网页开发的工具
phpBB 3.0.6 RC1简单介绍和下载
PHP教程:httpd.conf文件配置
PHP教程:类似GOOGLE搜索结果的分页
Apache服务器下配置SSI
php正则
PHP的十个高级技巧(上中下)
使用函数递归实现基于php和MySQL的动态树型菜单
用PHP制作静态网站的模板框架
Extended CHM PHP 语法手册之 DIY
PHP 和 HTML

PHP syntax error, unexpected $end 错误的一种原因及解决


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 138 ::
收藏到网摘: n/a

PHP 遇到 syntax error, unexpected $end 错误时,查错思路其实还是看看文件里 PHP 的开始标记和结束标记是否配对,还要额外注意注释里是否出现过 ?> 哟。 Parse error: syntax error, unexpected $end in script.php on line xx
调试了一会后发现产生错误的行是文件中间某行
//$str .= "?>\n";
想起来了 PHP 解释器允许的结尾标记那行还可以用单行注释,即 //$str .= "?>\n"; 被解释成结尾标记前有注释,注释的内容是 //$str .= ",而 ?> 后面的 \n"; 会被解释作 PHP 块外的内容按 HTML 输出出去!结果是给 $str .= "?>\n"; 这行添加 // 成注释后,反而多了个 ?> 的结束标记,造成原来真正的结束标记成了意料之外的(unexpected)了。
解决办法就是直接删掉这一行即可。
PHP 开始和结束标记所在行别写其它东西,是个好习惯。