无法在后台运行php文件

时间:2015-07-10 12:12:05

标签: php mysql command-line-interface

我想在后台运行一个有一些mysql命令的php文件,我无法这样做。 基于cakephp框架的php文件是不是在后台运行? 要运行php文件n后台,我需要编写基本的php格式 我是初学者。 我尝试过如下命令:

php filename.php
php filename.php &
php -a
exec( '/usr/bin/php -f /my/path/to/filename.php > /dev/null &' );

遵循本教程“http://www.xphp.info/background-processing-with-php/

请告诉我。

代码是:

<?php


include_once "a_file.php";


class Calci{


    var $ft = 350;
    var $fl = 130;
    var $lt = 60;    
    var $fbCount = 0;
    var $liCount = 0;
    var $twCount = 0;
    var $nodeId = 0;

    function index() {   
        App::import('model', 'User');
        $user_model = new User();

        $entry = $user_model->find("all", array("conditions" => array("not" => array("User.id" => null))));
        foreach($entry as $e) {
            $user_id = $e["User"]["id"];
            $tr=$this->getTrUser($user_id);
            $this->$e["User"]["id"]=$user_id;
            $this->$e["User"]["true_reach"]=$tr;
            $this->$e["User"]->save();
        }    
    }
    function getTrUser($id) {
// some calculation

}

}    

?>

3 个答案:

答案 0 :(得分:0)

您需要使用php-cli,使用exec

执行php脚本
exec('php-cli /var/www/gohachi-git/app/services/hachicalci.php > /dev/null &');

答案 1 :(得分:0)

如果您使用SSH /终端:

nohup php /my/path/to/filename.php &

答案 2 :(得分:0)

我认为最好的方法是使用Mysql事件调度程序和存储过程来运行此查询。