今天使用php的时候遇到一个奇怪的问题,一个php的文件中使用了另外一个文件中的函数,原本是在odp的环境中(系统会自动找到相应的文件),所以我把他们单独摘了出来使用,在依赖的地方使用include将文件包含进来。
但是在测试的时候出现了一点问题,
<span style="font-size:10px;"><?php
print "00";
include( "Pic.php");
print "01\n";</span>
上面这段代码的输出是:
在include的位置一定会打印一个空行。
一开始是查找导入的文件中是不是有打印的内容。(这一点我犯错误了,即便是有,也不应该在include的位置打印吧?并不确定)
再然后在网上搜到有提示说是BOM的原因。
百科中的解释为BOM为编辑器为了识别utf8文件时,在文件中打印的不可见字符,而php却不会自动忽略这个问题,所以会导致打印空行。使用其他编辑器编辑即可修正。附百科链接:http://baike.baidu.com/subview/126558/5073180.htm#viewPageContent
将文件从终端下载下来,使用sublime编辑之后,问题马上就解决了。