2015-12-21 18 views
-1

Gist

我想在PHP中運行一個cron作業。但execsystem函數不起作用。 (由於安全原因,服務器管理員不允許我使用這兩個函數)但是,我仍然需要使用PHP來運行它,因爲運行時間由公式決定,並且不確定。因此,如何在不使用execsystem函數的情況下運行cron作業?如何在不使用PHP中的exec或系統函數的情況下運行cron作業?

我認爲

我想出了通過的cPanel,它被設置爲被添加cron作業的唯一途徑「每分鐘一次。」這意味着設定爲每分鐘檢查cron作業目標PHP頁面在那一刻是否有任何事情要做。

問題

有一個可能的問題,如果它總是檢查頁面每天的每一分鐘,都不會破壞它的主機? (也許會造成CPU損壞或者佔用內存空間等)如果是這樣,如何改進?

+0

你有好的意圖,但是我不會打擾多少會影響CPU和/或硬盤等。它是硬件,這就是爲什麼它在那裏。 – Andrew

回答

2

您可以調用包含到PHP-CLI呼叫的bash腳本,然後將該文件:

#!/usr/bin/php  

    /path/to/my/php/file.php 

轉到服務器類型「的PHP」的命令行。將上面的/usr/bin/php替換爲返回的。然後你在你的CRON中調用這個bash腳本。

+0

對不起,我不明白你的意思。順便說一下,我租用的不是VPN主機的虛擬主機。所以去服務器的命令行可能是困難的事情。 –

+0

啊。關鍵是你可以在許多主機上運行bash腳本。你必須與你覈對,看看他們是否會允許。 –

+1

聖誕快樂* Sam *,我希望你玩得很開心:]也許你會獲得另一個[viper](http://www.jayblanchard.net/moebius_classic_colonial_viper.html)作爲聖誕禮物。 – Rizier123

0

正如你所說你有一個cPanel服務器,即時通訊猜測它的一個Linux機器。你可以通過輸入crontab -e從linux機器運行一個cronjob,然後運行一個php腳本。 */5 * * * * /usr/bin/php /path/to/file.php每5分鐘一次。

相關問題