php使用界定符后报 PHP Parse error: syntax error, unex...

被这个烂问题折磨的死去活来,同样一段代码

<?php
echo <<<END
ssdsdad
END;
?>
在文件A中可以正确执行,在文件B中不能执行 报错

 PHP Parse error:  syntax error, unexpected $end in .......

查资料是因为第二个END附近有非法的符号导致的,找啊找,找啊找,发现只有一个换行符

又找资料发现 MAC和DOC系统中换行符好像不太一样   php会根据系统确定换行符符号    

查看能正确运行的那个文件 是Dos\Windows   不能运行的是Macintosh

修改不能运行的文件格式为Macintosh   尼玛 终于正确运行了

然后又发现一个问题    服务器是linux系统   文件是Dos\Windows     系统和文件的格式不一样   但没有报错 

猜想是因为UNIX和Dos\Windows  中换行符是同一个符号      

实验验证不一样   看下图   具体原理求大神

换行符在各系统中的符号

  MAC  你妹~ 坑爹货~

转载于:https://my.oschina.net/u/273372/blog/95172

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值