Our PHP program sometimes needs to be executed periodically, we can use the Ignore_user_abort function or put JS on the page to let the user help us to achieve. But neither of these methods is reliable and unstable. We can use the Linux crontab tool to reliably trigger PHP to perform tasks
Here are two ways to crontab.
First, use PHP to execute script in crontab
Just like calling a normal shell script in crontab (specific crontab usage), use a PHP program to invoke the PHP script.
Each hour executes myscript.php as follows:
Copy CodeThe code is as follows:
# CRONTAB-E
XX * * * */usr/local/bin/php/home/john/myscript.php
/usr/local/bin/php is the path to the PHP program.
second, use URL to execute script in crontab
If your PHP script can be triggered by a URL, you can use Lynx or curl or wget to configure your crontab.
The following example uses the Lynx text browser to access the URL to execute PHP scripts every hour. The Lynx text browser opens the URL by default using dialog. However, like the following, we use the-dump option in the Lynx command line to convert the output of the URL to standard output.
Copy CodeThe code is as follows:
XX * * * * lynx-dump http://www.jb51.net/myscript.php
The following example uses Curl to access the URL to execute PHP scripts every 5 minutes. Curl defaults to show output in standard output. With the "curl-o" option, you can also dump the output of the script to a temporary file.
Copy CodeThe code is as follows:
*/5 * * * */usr/bin/curl-o temp.txt http://www.jb51.net/myscript.php
The following example uses the wget access URL to execute PHP scripts every 10 minutes. The-q option indicates quiet mode. "-O Temp.txt" indicates that the output is sent to a temporary file.
Copy CodeThe code is as follows:
*/10 * * * */usr/bin/wget-q-o temp.txt http://www.jb51.net/myscript.php
How to use Linux crontab to execute PHP scripts in a timed manner