使用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
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)
...............
$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)
chdir ( $cur_dir );
require ( ../ class / a . php)
require ( ../ class / b . php)
运行成功
总结: 在require 时,如果是相对目录,在crontab 中运行php脚本,要进入到脚本所在目录才可以