!解析错误:语法错误,意外“公共”(T_PUBLIC)

时间:2013-01-09 17:06:42

标签: php wordpress

我正在本地转移一个wordpress网站,所以我可以安全地开发,我对这一切都很新,并且遇到了这个错误,所以如果你能用简单的术语解释如何解决那么这将是非常有帮助的:

!Parse error: syntax error, unexpected 'public' (T_PUBLIC) in 
C:\wamp\www\KentVenuesTest\wp-content\mu-plugins\wpengine-common\plugin.php
on line 408

Call Stack

#  Time    Memory   Function
1.0.0007 - 247624 - {Main}()<p>
2.0.0014 - 251160 - require ('C:\wamp\www\KentVenuesTest\wp-blog-header.php')<p>
3.0.0022 - 268032 - require_once('C\wamp\www\KentVenuesTest\wp-load.php')<p>
4 0.0029 - 279728 - require_once('C\wamp\www\KentVenuesTest\wp-config.php')<p>
5 0.0041 - 370928 - require_once('C\wamp\www\KentVenuesTest\wp-settings.php')<p>
6 0.2186 - 13379696 - 4 -0.0029 - 279728 - include_once('C\wamp\www\KentVenuesTest\mu-plugins\mu-plugin.php<p>

Location

1 ..\index.php:0<p>
2 ..\index.php:17<p>
3 ..\wp-blog-header.php:12<p>
4 ..\wp-load.php:29<p>
5 ..\wp-config.php:90<p>
6 ..\wp-settings.php:159<p>

非常感谢任何帮助。

4 个答案:

答案 0 :(得分:8)

问题可能出在php配置上的差异。例如。我曾经遇到过类似的问题,你的情况让我想起了。它是由与短<?php语法相关的php配置引起的,它允许使用<?。在测试环境中<?对生产的作用不是

答案 1 :(得分:0)

任何一行408都有错误,缺少一个分号或者下一行阻塞的东西,或者你可能正在使用一个不支持类的超级旧版本的PHP虽然我希望早些时候能够使用它。你是不是想尝试在PHP 4上运行PHP 5脚本?

public关键字只能在php的类上下文中使用,也许这会给你一个线索。可能是你错误地在其他地方使用过它。

确保所有大括号都已关闭{}

'localhost'应该适用于DB,但其他包含路径应​​该是正确的。

您可能正在使用<?而不是<?php。尝试切换到<?php

答案 2 :(得分:0)

文件408

中的行C:\wamp\www\KentVenuesTest\wp-content\mu-plugins\wpengine-common\plugin.php之前或之前存在语法错误

当解析器到达408行上的令牌“public”时,它确信某处肯定存在错误,因为它不希望看到令牌“公开”。

答案 3 :(得分:0)

PHP抱怨代码中存在语法错误。

由于看起来您只使用第三方代码,我猜测代码中实际上没有语法错误,但您更有可能尝试在不兼容的PHP版本上运行它用它。

远程服务器上有哪些版本的PHP(即工作地点(?))与本地计算机相比(即它不起作用的地方)?

我猜你可能在那个不起作用的PHP上有旧版本的PHP。尝试升级它;最好的方法是确保开发站点和活动站点都运行相同的PHP版本,但只要它们都足够最新,它们就完全相同并不重要。运行代码。