用户
 找回密码
 入住 CI 中国社区
搜索
查看: 3214|回复: 3
收起左侧

[版本 3.x] 针对php版本太低而出现的控制器不能与方法名相同

[复制链接]
发表于 2016-2-29 11:44:31 | 显示全部楼层 |阅读模式
针对php版本太低而出现的控制器不能与方法名相同这个问题。除了升级php跟不让控制器与方法重名    还有什么解决方案     求解!
由于服务器的php版本太低,导致CI框架写的项目出现报错,因为本地开发环境php是5.4以上的。所以不会出现控制器跟方法重名出现的错误

现在传到服务器以后就开始报错了。   
除了升级PHP版本,还有重新更改所有的控制器跟方法重名的地方、还有什么方法求解。
针对php版本

A PHP Error was encountered
Severity: Runtime Notice
Message: Redefining already defined constructor for class Index
Filename: controllers/Index.php
Line Number: 34
Backtrace:
File: /www/users/174b8.com/index.php
Line: 292
Function: require_once

 楼主| 发表于 2016-2-29 13:39:24 | 显示全部楼层
服务器php版本是5.2的。所以传上去。访问主页就出错了。我平常习惯于默认页面为Index/index     所以当我直接输入网址的时候就有上面的报错
发表于 2016-2-29 13:42:04 | 显示全部楼层
开发代码的时候就不应该写和类名同名的方法,这是一个 PHP 特有的东西。
即使升级到 PHP 新版本,由于 PHP 需要兼容老版本所以会执行两次这个方法,所以建议全文替换代码,否则后患无穷。
 楼主| 发表于 2016-3-4 15:45:52 | 显示全部楼层
最后还是采用了这种方法解决了问题

本版积分规则