Zend Framework でバッチ処理を行う。

シェアする

Zend Framework で作ってるものがあって、ちょっとバッチ処理用のスクリプト書きたいなーって思って調べたのでメモ。

やることは単純で、public/index.php と同じ様に、 APPLICATION_PATH , APPLICATION_ENV を読み込み、 Zend_Application を new するだけで良い。

// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH',
        realpath(dirname(__FILE__) . '/../application'));

// Define application environment
defined('APPLICATION_ENV')
        || define('APPLICATION_ENV',
                (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV')
                : 'production'));

require_once 'Zend/Application.php';
$application = new Zend_Application(
        APPLICATION_ENV,
        APPLICATION_PATH . '/configs/application.ini'
);

$hogem = new Application_Model_HogesMapper();
$entries = $hogem->fetchAll();

if ($entries) {
        foreach ($entries as $entry) {
                $entry['status'] = '1';
                $entry['update_date'] = date('Y-m-d H:i:s');
                $hogem->update($entry);
        }
}

今回はDBからデータをひっぱってきてカラムの値を2つほど変えてアップデートしています。

思ったより楽でした。

Sponsored Link

シェアする

フォローする