输入中出现意外字符:'\'(ASCII = 92)state = 1

bos*_*maj 19 php namespaces

我的客户说他使用我的脚本得到了这个错误:

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /path/to//header.php  on line 34
Parse error: syntax error, unexpected T_STRING, expecting T_CONSTANT_ENCAPSED_STRING or '(' in/path/to/header.php  on line 34
Run Code Online (Sandbox Code Playgroud)

34号线header.php就是use \Main\Class;

现在,我告诉他他必须拥有PHP >= 5.3.0,他说他的PHP版本是5.3.24

可能是什么问题呢?

编辑:之前和之后的行

30. // Define absolute path
31. define("ABSPATH", $abs_path);
32. $_SESSION["abs_path"] = ABSPATH;
33. 
34. use \CNS\main\CNS;
35. $cns = new CNS();
Run Code Online (Sandbox Code Playgroud)

编辑2:

他发给我了这个:

Program     Version
Apache:     2.2.24
CentOS:     CentOS release 6.4 (Final)
cPanel:     11.36.1 (build 8)
Curl:       7.12.1
MySQL       5.5.30
phpMyAdmin  3.5.5
Python:     2.6.6
Program     Version
Perl:       5.8.8
**PHP:        5.3.24**
ionCube Loader:     4.2.2
Zend Optimizer:     3.3.9
Ruby:       1.8.7
Rails:      3.2.8
OpenSSL:    1.0.0-fips
Run Code Online (Sandbox Code Playgroud)

jra*_*ede 40

如果您尝试使用名称空间但没有PHP 5.3,则会发生这种情况.PHP 5.2及更低版本不支持名称空间,并在看到反斜杠时抛出此错误.

- 编辑:混淆版本.如果我没有弄错的话,它的5.2及以下没有名称空间.


sal*_*the 13

现在,我告诉他他必须有PHP> = 5.3.0并且他说他的PHP版本是5.3.24

可能是什么问题呢?

他的PHP版本实际上是<5.3.0,无论他是否知道.

查看许多PHP版本上发生的错误.