簡體   English   中英

在PHP中執行腳本作為守護進程

[英]Executing script as daemon process in PHP

這個腳本在我的php頁面javascript中,在頁面加載時被調用:

<script type="text/javascript">
        var id =0;
        function getData(){    
        $.ajax({
              url       : "refresh.php",
              type      : "POST",
              data      : {"id" : id},            
              success   : function(data) {
                 $(".show").html(data);
              }
          });
    }
        $(document).ready(function(){
      setInterval("getData()",36000);//Polls in every x sec
    });
    </script>   

refresh.php執行我的實際過程,我希望每1小時執行一次

是什么讓的方式refresh.php得到眾人小時autmatically執行?

refresh.php

<?php
    error_reporting(E_ERROR | E_PARSE);
    $feedUrl = "http://api.frrole.com/v1/curated-content?location=India&contenttype=link&orderby=popularity&apikey=wmqmz15svzH8qSy5yQuF52b068a40a69e";
    $json = file_get_contents($feedUrl);
    $code = json_decode($json,true);

    foreach($code as $arr)
    {
    foreach($arr as $k=>$v)
    {
    echo $arr[$k]['title']."<br>";
    echo $arr[$k]['city']."<br>";
    //inserts this vvalue in db
    echo "<br>";
    }
    }

?>

我已經看到了execute php script in background Google execute php script in backgroundexecute php script in background所有結果

顯示這樣的解決方案:

  1. nohup php myscript.php &

    但是nohup有一些問題

  2. 2。

exec("/bin/bash -c '/usr/bin/php /path/to/child.php 2> /dev/null' &");

和別的

我很困惑。 哪一個是正確的方法呢?

如果您希望每小時自動執行一個腳本,您可能需要調查cron。 大多數Web主機至少通過其控制面板提供cron服務。

如果你在linux上,請使用crontab -e然后每小時輸入一次

0 * * * * / bin / php /your_path/refresh.php

然后保存文件

:WQ

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM