/** * cakeコマンドに実行権限あるか * * @return bool */ public static function isExecutableCake() { if (MailSend::isWindows()) { // Windowsの場合 // is_executable()はwindowsの場合、exeのみしか判定できないため、一律trueを返す return true; } else { // Linuxの場合 return is_executable(APP . 'Console' . DS . 'cake'); } }
/** * メール送信呼び出し * * @return void */ public static function send() { // バックグラウンドでメール送信 // コマンド例) ./app/Console/cake Mails.mailSend if (MailSend::isWindows()) { // Windowsの場合 exec(APP . 'Console' . DS . 'cake Mails.mailSend send > /dev/null &'); } else { // Linuxの場合 // logrotate問題対応 http://dqn.sakusakutto.jp/2012/08/php_exec_nohup_background.html exec('nohup ' . APP . 'Console' . DS . 'cake Mails.mailSend send > /dev/null &'); } }