PHP: Require path does not work for cron job?(PHP:需要路径不适用于 cron 作业?)
问题描述
我有一个需要包含此文件的 cron 作业:
I have a cron job that needs to include this file:
require '../includes/common.php';
但是,当它通过 cron 作业(而不是我的本地测试)运行时,相对路径不起作用.cron 作业运行以下文件(在实时服务器上):
however, when it is run via the cron job (and not my local testing), the relative path does not work. the cron job runs the following file (on the live server):
/home/username123/public_html/cron/mycronjob.php
这是错误:
Fatal error: require(): Failed opening required '../includes/common.php'
(include_path='.:/usr/lib/php:/usr/local/lib/php') in
/home/username123/public_html/cron/mycronjob.php on line 2
使用与 cron 作业相同的绝对格式,common.php
将位于
using the same absolute format as the cron job, common.php
would be located at
/home/username123/public_html/includes/common.php
这是否意味着我必须将第 2 行替换为:
does that mean i have to replace my line 2 with:
require '/home/username123/public_html/includes/common.php';
?
谢谢!
推荐答案
从技术上看php脚本是在cron所在的地方运行的;前任.如果 cron 在/bin/cron 中,则该语句将在/bin/includes/common.php 中查找 common.php.
Technically seen the php script is run where cron is located; ex. If cron was in /bin/cron, then this statement would look for common.php in /bin/includes/common.php.
是的,您可能必须使用完整路径或使用 set_include_path
So yeah, you'll probably have to use fullpaths or use set_include_path
set_include_path('/home/username123/public_html/includes/');
require 'common.php';
这篇关于PHP:需要路径不适用于 cron 作业?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:PHP:需要路径不适用于 cron 作业?
基础教程推荐
- 在 yii2 中迁移时出现异常“找不到驱动程序" 2022-01-01
- 在 CakePHP 2.0 中使用 Html Helper 时未定义的变量 2021-01-01
- 如何在 XAMPP 上启用 mysqli? 2021-01-01
- HTTP 与 FTP 上传 2021-01-01
- Doctrine 2 - 在多对多关系中记录更改 2022-01-01
- PHP 守护进程/worker 环境 2022-01-01
- phpmyadmin 错误“#1062 - 密钥 1 的重复条目‘1’" 2022-01-01
- 找不到类“AppHttpControllersDB",我也无法使用新模型 2022-01-01
- 使用 PDO 转义列名 2021-01-01
- 如何在 Symfony 和 Doctrine 中实现多对多和一对多? 2022-01-01