勉強したことのメモ

webプログラマが勉強したことのメモ。

CodeIgniterでCronを実行する方法

   

CodeIgniterで特定の処理をCronで自動で実行したかった。以下に設定方法をメモ。

 

■設定

applicationとかsystemとかが置いてあるディレクトリのindex.phpに以下の通り追記する。

 

■Cronで実行したい処理

コントローラーで普通に関数を書く。

ただ、上記の場合にルーティング設定をしているとHTTPリクエストからでも実行されてしまう。 もし実行したくない場合は、以下のように記述する。

 

■Cronの記述

以下の通り記述する。

上記の場合は「1時間に1回コントローラーのCron.php内のhogeメソッドをrootユーザーで実行する」という形になる。

 

■その他

HTTPリクエストの許可拒否をメソッド単位で変更できるのは便利。基本的には自動処理だけど、たまに手動処理したいとかいう場合に使える。

 

■参考サイト

http://www.ci-guide.info/extension/cli/

 - PHP

  関連記事

Warning: Division by zero in

PHPでグラフ作ってる時に出たエラー 「Warning: Division by ...

mb_convert_variablesとmb_convert_encodingの違い

両関数の違いについて、引数の場所というか順番が違うだけ? と思ってたけどどうにも ...

前置インクリメントと後置インクリメント

何かの検索している時に見つけたもの。 前置インクリメントの方が高速とのこと。 ■ ...

MySQLiでDELETE文

MySQLiでDELETE文 ■ソース $mysqli = new mysqli ...

PHPページングテンプレ

使いやすいのがあったのでメモ。   $page            ...

PHPでメルマガを配信する方法2

以前にPHPでメルマガを配信する方法を書いたけど、BCCだと相手の名前などユーザ ...

PHPでログファイルから指定行数表示させる

エラーログを最新分から指定行数表示させる プログラムがあって、どういった作りにな ...

PHPでの$_REQUESTは色々危険

extract($_REQUEST)はかなり怖いよ、という話が最近あった。 でき ...

MySQLで重複を除く

ユニークな値を取り出したいときに使う。 DISTINCT(ディスティンクト) S ...

PHPで配列じゃないものに対してソート

PHP Warning:  sort() expects parameter 1 ...