当前位置: 首页 > 图文教程 > 网络编程 > PHP > php cli 方式 在crotab中运行解决

PHP
实现“上一页”和“下一页按钮
实现分十页分向前十页向后十页的处理
基于文本的搜索
基于文本的访客签到簿
php数据库连接
无数据库的详细域名查询程序PHP版(2)
无数据库的详细域名查询程序PHP版(1)
谈谈PHP语法(2)
PHP编程与应用
用户的详细注册和判断
以文本方式上传二进制文件的PHP程序
PHP的类--功能齐全的发送邮件类
一个php作的文本留言本的例子(一)
一个php作的文本留言本的例子(五)
一个php作的文本留言本的例子(四)
一个php作的文本留言本的例子(三)
一个php作的文本留言本的例子(二)
一个php作的文本留言本的例子(六)
PHP4引用文件语句的对比
写一个用户在线显示的程序

PHP 中的 php cli 方式 在crotab中运行解决


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-02-27   浏览: 225 ::
收藏到网摘: n/a

使用php脚本写了一个脚本,需要在crontab中定期运行,但是出现如下错误
复制代码 代码如下:

/var/www/html/bt/e/BtSys:.:/usr/share/pear:/usr/share/phpPHP Warning: require(../class/connect.php): failed to open stream: No such file or directory in /var/www/html/bt/e/BtSys/torrents-scrape.php on line 17
PHP Fatal error: require(): Failed opening required '../class/connect.php' (include_path='/var/www/html/bt/e/BtSys:.:/usr/share/pear:/usr/share/php') in /var/www/html/bt/e/BtSys/torrents-scrape.php on line 17

尝试解决方法1 加入如下代码
代码
复制代码 代码如下:

// setting include path
$cur_dir=getcwd();
$cur_dir=$basedir = dirname(__FILE__);
$path = ini_get('include_path');
ini_set("include_path", "$cur_dir:$path");
$path = ini_get('include_path');
//echo $path;
require(../class/a.php)
require(../class/b.php)
...............

运行失败
尝试解决方法2 加入如下代码
复制代码 代码如下:

$cur_dir = dirname(__FILE__);
chdir($cur_dir);
require(../class/a.php)
require(../class/b.php)

运行成功
总结: 在require 时,如果是相对目录,在crontab 中运行php脚本,要进入到脚本所在目录才可以