When running php in cron, the include and require path may not work.
Eg. when your file has below require or include statement:
require '../includes/common.php';
You will get a fatal error when running using php-cli or php-cli in cron
# php-cli php /home/username123/public_html/cron/mycronjob.php # cron * * * * * php /home/username123/public_html/cron/mycronjob.php
Error got:
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
To fix this, you need to use php to set include_path attributes so when running cron it'll set the path so the script will learn where to look for the include / require files.
set_include_path
reference: http://php.net/manual/en/function.set-include-path.php
example:
set_include_path('/home/username123/public_html/includes/'); require 'common.php';