勉強したことのメモ

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

  関連記事

PHPでコマンドを実行して画像を加工

PHPで画像をリサイズしたりサムネイルを作ろうとすると、 ソースが長くなって面倒 ...

PHPで変数名を動的に変えて使う方法

変数名を動的に変えて使用したかった。 調べてみると可変変数というものがあり、希望 ...

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

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

PHPで簡単にCSVファイルの生成

簡単にデータ並べるだけのCSVファイル生成。 file_put_contensで ...

PHP側での画像最大アップロードサイズの確認

画像がアップロードできず、恐らくサイズ指定にひっかかっているので 最大サイズを調 ...

PHPのintval

intvalという見たこと無い関数があったのでメモ。 ■リファレンス http: ...

PHPのfor文とforeach文

ループ処理の際、forとforeachのどっちでもいけそうな場合、 特にどっちを ...

ゼロ詰め(ゼロパディング)の逆はゼロサプレス

ゼロパディングしている日付のゼロの部分を排除したかった。ただ、どうやって調べたら ...

PHPで画像のアップロード

<php define('IMAGES_DIR', dirname($_S ...

PHPで実行時間の測定

$start_time = microtime(true); /***測定したい ...