我正在尝试让我的页面每 5 秒刷新一次以更新数据。虽然 Cron 每 1 分钟只运行一次。所以我试图将我每 5 秒加载一次自我刷新的页面合并到页面中。
我的 Cron 工作是: /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
这似乎更新了我的代码,尽管每分钟只更新一次。
我创建的btc-fetch.php
页面是:
<?php
$page = $_SERVER['PHP_SELF'];
$sec = "5";
?>
<html>
<head>
<meta http-equiv="refresh" content="<?php echo $sec?>;URL='<?php echo $page?>'">
<meta name="robots" content="noindex">
<meta name="googlebot" content="noindex">
</head>
<body>
<?php
$url = "https://www.bitstamp.net/api/ticker";
$fgc = file_get_contents($url);
file_put_contents('/home/cplpc/public_html/data/btc-the-price', $fgc);
echo $fgc;
?>
</body>
任何指导或方向将不胜感激。如果我在浏览器中打开了 btc-fetch.php,这个脚本就可以工作,尽管我认为这是因为"它在浏览器中"?有没有办法实现相同的预期任务?
* 感谢您的回复
我正在使用cPanel进行Cron Job。也许我需要看看另一种方式,然后PHP_SELF刷新。感谢您的提示。
你可以用cronjobs来做到这一点,但这可能不是一个很好的方法。
* * * * * /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 5 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 10 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 15 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 20 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 30 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 35 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 40 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 45 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 50 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
* * * * * sleep 55 && /usr/bin/php /home/cplpc/public_html/commons/btc-fetch.php
问题在于:如果您的 PHP 脚本运行超过 5 秒,您最终会得到大量已使用(被阻止(的资源。
取自 https://stackoverflow.com/a/9619449/9618184 的想法