PHP中的空格导致无意义的错误?

时间:2011-09-13 17:13:16

标签: php netbeans character-encoding whitespace file-encodings

我正在编辑WordPress主题的functions.php文件,每当我编辑它时,即使编辑添加单个空格,服务器也会返回

错误:

Parse error: syntax error, unexpected '}' in /theme/functions.php on line 1     

这是我添加单个空格的地方:

<?php load_theme_textdomain('theme', get_template_directory() . '/languages'); 
 <— I added a single space here

之后一切都会消亡。这不是一个一致的错误,因为它在我用备份的一个替换整个functions.php文件本身后就消失了。它只在我编辑文件时被复制,也就是说,即使是单个空白字符也是如此。我正在使用NetBeans和CuteFTP编辑然后上传文件。

发生了什么事?! 这必须与某种文件质量本身有关,因为从代码的角度来看,代码完全相同......或者可能是我的服务器。

解决方案:
Netbeans默认为每个项目的特定文件编码。外部文件可能具有不同的编码,这可能会导致问题。将外来文件的内容编码为您通过Netbeans创建的新空白文件。

2 个答案:

答案 0 :(得分:3)

可能是编码错误。也许当您尝试编辑文件时,文本编辑器会在顶部包含UTF-8 BOM。

修改

刚刚在Notepad ++中找到了在没有BOM的情况下保存为UTF-8的说明:

  

1)点击“格式”   选择“在没有BOM的UTF-8中编码”

     

2)点击“设置”   点击“首选项”   点击“新建文件/打开保存目录”   选择“无BOM的UTF-8”

(来源:http://www.phpbb.com/community/viewtopic.php?f=66&t=1584655#p9490925,来自底部的第5个答案)

但您需要设置的编码实际上取决于原始文件。如果它不是UTF-8,你应该保留原始编码(拉丁语1或其他)。

答案 1 :(得分:0)