欧卡2中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

需要三步,才能开始

只需两步,慢速开始

玩欧卡就用莱仕达V99方向盘欧卡2入门方向盘选莱仕达V9莱仕达折叠便携游戏方向盘支架欢迎地图Mod入驻
查看: 5739|回复: 0
收起左侧

php程序返回消息多了一个换行符

[复制链接]
oppo 发表于 2015-4-27 17:52 | 显示全部楼层 |阅读模式
http://www.blogbus.com/wanping-logs/123101470.html
今天在测试一个php写的消息转发程序,发现转发来的消息比没有使用php转发之前多了个换行符,php程序的功能就是把消息做了个转发,别的操作都没有,可是为什么会多个换行符呢?把php的程序打开,echo的消息,没有回车换行符阿,echo $str;

可是执行结果就是多了个回车换行符,重新自己手动写了个简单的php程序test.php,功能就是echo "this is a test";执行结果是没有换行阿,奇怪啊,换行符那里来的,难道apache加入的,可是apache加入的话,test.php程序也应该加入换行符阿,看了半天代码也没看出一点眉目,这个问题都搞了2天啊,昨天到今天,所有可能出问题的地方都排查出来了,都没有问题,最后就是发现php未转发前和转发后消息就多了个换行符,程序大概是这么写的:

<?php

echo $str;

?>



我的test.php这么写的:

<?php

echo "this is a test";

?>

两个唯一不同的就是一个echo的变量,一个echo的是字符串,第一个把变量改为字符串,还是那个问题。终于有同事发现了,第一个程序的php程序结束后,多了一个回车换行,即?>后对了个空行,去掉这个空行,再执行,ok,回车符去掉了。

网上搜了下,有人也遇到类似的问题,如下说明:

PHP闭合标签“?>”在PHP中对PHP的分析器是可选的。 但是,如果使用闭合标签,任何由开发者,用户,或者FTP应用程序插入闭合标签后面的空格或空行都有可能会引起多余的输出、php错误、之后的输出无法显示、空白页。因此,所有的php文件应该省略这个php闭合标签,并插入一段注释来标明这是文件的底部并定位这个文件在这个应用的相对路径。这样有利于你确定这个文件已经结束而不是被删节的。



http://blog.sina.com.cn/s/blog_550ffb0b0100f7sk.html

联系我们|手机版|欧卡2中国 ( 湘ICP备11020288号-1 )

GMT+8, 2024-11-25 13:00 , Processed in 0.030410 second(s), 7 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表