0

我对 CodeIgniter 有奇怪的问题,

这是我的控制器的开始部分

class Home extends Controller
{
    /** 
    * Constructor
    */ 
    public function __construct() {
        parent::Controller();

    }

...

在本地主机上一切正常,但是当我在服务器上尝试相同时,我遇到了如下错误:

解析错误:语法错误,意外的 T_STRING,在第 22 行的 /home3/blabla/public_html/blablabla/applications/frontend/controllers/home.php 中需要 T_OLD_FUNCTION 或 T_FUNCTION 或 T_VAR 或 '}'

我研究过,人们说它是关于 PHP4 的。它应该是 PHP5。但我的服务器上安装了 PHP5。可能是什么原因?

感谢帮助!多谢!

4

5 回答 5

4

听起来解释器确实在意外的public关键字上绊倒了,这表明在 PHP4 上运行的站点存在问题/问题。

确保您在站点本身中呼应 PHP 版本,而不仅仅是在某些控制面板中查找它。

检查是否有任何.htaccess指令可以将默认处理程序更改为 PHP4。

有时主机可能默认使用 PHP4 处理.php文件,而 PHP5 只处理.php5文件。

于 2009-08-05T12:48:23.427 回答
2

我很抱歉!我不知道怎么来的,但 Bluehost 信息面板说 PHP 5 处于活动状态。我只是相信这一点。当我制作一个 php_info(); 以防万一,我看到它实际上是 php 4 :/

我为 PHP5 更新了服务器,现在一切都很好。

我很抱歉搞砸了。并感谢大家的大力支持!!!

于 2009-08-06T07:57:23.490 回答
0

你对课堂上的其他功能也有同样的问题吗?因为,据我所知,您不能将构造函数设为公共或私有。它应该只是“function __construct()”。

于 2009-08-05T12:34:10.397 回答
0

在您的 php.ini 文件中查看正在运行的 php 版本。

于 2009-08-05T13:10:10.140 回答
0

我删除了公共部分,它工作正常。真奇怪!那里的公众真的很重要吗!?

于 2009-08-05T13:18:15.127 回答