webdata
DX推進をサポートする技術者向け情報提供サイト

技術者向け技術情報

TOP >技術者向け技術情報 > プログラムのジョブ利用

【PHP】プログラムのジョブ利用

 2022-07-24 (更新日:2022-07-24)
 PHPプログラムはジョブとしても利用できます。利用例と付けジュール設定の利用をご紹介します。

■Linux crontab 設定例

<?php

$ crontab -e

10 * * * * /phpのエグゼファイルの配置先フルパス/php /プログラム配置先フルパス/プログラム名.php
//例) 10 * * * * /opt/lampp/bin/php /opt/lampp/htdocs/job/*******.php

?>	
<解説>
 ブラウザからは動くがcrontabからは動かないことがあります。その要因は、 プログラムのパーミッションが
644のままで実行権限がない場合があります。755等への変更が必要です。apacheが動いているユーザ、グループに合わせパーミッションを変更ください。
 次に、プログラムで利用している include()関数の関数配置先指定が、
($_SERVER['DOCUMENT_ROOT'].'/job/*****.php');のままの場合動きません。
これは、$_SERVER['DOCUMENT_ROOT']でなく、フルパスにて指定が必要です。
 例)include(/opt/lampp/htdocs/job/*****.php)


■Windows スケジューラー 設定例

 ポイントは、下記の通り「プログラム/スクリプト」と「引数の追加」の設定となります。
 プログラム/スクリプト(P):には、
php-win.exe を指定します。
このときパスのは、
C:¥xampp¥php¥php-win.exe
をフルパスで記載します。

 引数の追加(オプションXA):には、
動かすPHPプログラムを指定します。
このときもパスは、C:¥xampp¥htdocs¥****¥job****.php
のように記載します。