我遇到了一个在工作中创建新的 PHP cron 的清单,其中一个方向是:
添加一个包装器文件,该文件将作业代码的主要部分调用为 cron_[姓名].sh
示例 cron.sh:
#!/bin/sh
###########################################################
# This job sends out the daily digest emails
###########################################################
. $DS_JOBS_DIR/cron_common.sh
cd $DS_JOBS_DIR/digests
$DS_PHP daily_digest.php
将 PHP cron 包装在 shell 脚本中有什么好处?
没有理由。
但是在那之后,你可以在shell脚本中执行多项操作 - 更多的php或其他任务。
但我的主要猜测是,如果你在"创建新 PHP cron 的清单"中找到它,那么它只是组织希望如何完成工作 - 由于上述因素,或者仅仅是他们的 IT 经理/服务器管理员更喜欢它的方式。
我能想到这样做的唯一原因是允许 PHP 脚本访问在 cron_common.sh 中设置的 shell 环境变量(即可能包含配置设置(。