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

php 运行的问题

[复制链接]
发表于 2008-3-13 13:45:31 | 显示全部楼层 |阅读模式
我做一个系统性能监控的网站,有些php程序需要放到crontab中自动运行获取系统信息,
需用用到CI的功能,比如加载插件,数据库操作。
但是我在shell下运行php xxx.php,报错如下:
PHP Fatal error:  Class 'Controller' not found in /home/aaa/wwwroot/bbb/system/application/controllers/blog.php on line 2
Fatal error: Class 'Controller' not found in /home/aaa/wwwroot/bbb/system/application/controllers/blog.php on line 2

不知道有没有办法实现在shell下php运行程序,并且可以使用CI功能办法。

谢谢大家了
发表于 2008-3-13 14:01:43 | 显示全部楼层
index.php这个文件会requrie很多文件
如果单一执行某个controller的php文件而没有requrie别的肯定会有找不到某某类,某某方法的错误
错误的原因应该是这个没有错

至于shell下运行php,俺也不清楚
 楼主| 发表于 2008-3-13 14:28:10 | 显示全部楼层
我发现php index.php 可以运行route.php里面配置的xxx.php,有没有办法通过参数的形式调用index.php 运行别的php程序呢
发表于 2008-3-13 15:05:45 | 显示全部楼层
shell 方式下的 URL 处理不一样了吧,你换成 query_string 形式,试试!
 楼主| 发表于 2008-3-13 15:13:33 | 显示全部楼层
和url没关系吧,就是要在shell下运行system/application/controllers下的php程序。
因为在浏览器访问的时候,会先调用index.php,它会将很多东西require,并且初始化,但如果在shell下php运行程序的话,不能初始化那些东西,所以运行失败,有没有方法在shell下运行php程序前先初始化,或者在php程序中将CI需要的东西都require呢?
谢谢了
发表于 2008-3-13 18:16:02 | 显示全部楼层
总之一句话,不是为 shell 设计的。
index.php 后面的东西都是 PATH_INFO,shell 能给他提供这个吗?这是服务器提供的东西。
 楼主| 发表于 2008-3-13 20:44:03 | 显示全部楼层
哦,非常感谢,我也不用去乱试了,呵呵
谢谢了:)
发表于 2008-4-14 14:09:58 | 显示全部楼层
http://codeigniter.com/wiki/Category:Advanced::CronScript/

这边有讲一个在命令行下跑CI的方法
发表于 2008-4-14 14:44:05 | 显示全部楼层
这可是好东西,学习了~~
发表于 2012-4-9 16:49:11 | 显示全部楼层
in文???

本版积分规则