Home Backend Development PHP Tutorial Using crontab to execute PHP scripts regularly under Linux_PHP tutorial

Using crontab to execute PHP scripts regularly under Linux_PHP tutorial

Jul 13, 2016 pm 05:41 PM
crontab linux php one time Down use exist timing implement method have Script Record

This method is urgently needed recently, record it and try it when you have time^^

Under linux, you can use crontab + php method:

1. Use crontab –e to edit scheduled tasks

The content is:

 xx:xx:xx execute a test.php file

2. The php file must be in the first line of the file, plus the interpreter path (just like perl does)

 #!/usr/local/bin/php

The execution of PHP requires the support of Apache, the execution of shell script requires the support of Linux, and Linux supports the function of running a certain program regularly

 ------------------------------------------------ ----------------

Use PHP as a Shell scripting language (reprint)

--English original: Darrell Brogdon, published at http://www.phpbuilder.com/columns/darrell20000319.php3)

Many people may have thought about using PHP to write some programs such as scheduled mailing, but there is no way to execute PHP regularly. When I went to PHPBuilder, I found this article, so I wanted to translate it for everyone (do it at the same time (with some modifications), I hope it is useful to everyone.

 ------------------------------------------------ ----------------------------------

We all know that PHP is a very good dynamic web development language (fast speed, short development cycle...). But only a few people realize that PHP can also be used as a language for writing Shell scripts. When PHP is used as a language for writing Shell scripts, it is not as powerful as Perl or Bash, but it has good advantages. Especially for people like me who are familiar with PHP but not very familiar with Perl.

To use PHP as a shell scripting language, you must compile PHP as binary CGI instead of Apache mode; PHP compiled into binary CGI mode has some security issues. For solutions, see the PHP manual ( http://www.php.net).

You may feel uncomfortable writing Shell scripts at first, but you will get better gradually: the only difference between using PHP as a general dynamic web page writing language and as a Shell script language is that a Shell script needs to be written first Xingsheng explains the program path of this script:

 #!/usr/local/bin/php -q

We added the parameter "-1" after the PHP execution file, so that PHP will not output HTTPHeader (if you still need to use it as a dynamic web page on the Web, then you need to use the header function to output HTTPHeader yourself). Of course, you still need to use PHP’s opening and closing tags in the Shell script:

Now let’s look at an example to better understand the use of PHP as a shell scripting language:

 #!/usr/local/bin/php -q

print("Hello, world! ");

 ?>

The above program will simply output "Hello, world!" to the monitor.

1. Pass the Shell script running parameters to PHP:

As a Shell script, you often add some parameters when running the program. When PHP is used as a Shell script, it has an embedded array "$argv". Using the "$argv" array can easily read the shell script when it is running. parameters ("$argv[1]" corresponds to the first parameter, "$argv[2]" corresponds to the second parameter, and so on). For example, this program:

 #!/usr/local/bin/php -q

$first_name = $argv[1];

$last_name = $argv[2];

printf("Hello, %s %s! How are you today? ", $first_name, $last_name);

 ?>

The above code requires two parameters when running, namely last name and first name. For example, run like this:

 [dbrogdon@artemis dbrogdon]$ scriptname.ph Darrell Brogdon

The Shell script will output on the monitor:

Hello, Darrell Brogdon! How are you today?

 [dbrogdon@artemis dbrogdon]$

When PHP is used as a dynamic web page writing language, it also contains the "$argv" array, but there are some differences: when PHP is used as a Shell script language, "$argv[0]" corresponds to the file name of the script. , and when used for dynamic web page writing, "$argv[1]" corresponds to the first parameter of QueryString.

2. Write an interactive Shell script:

If a Shell script just runs by itself and loses interactivity, then it is meaningless. When PHP is used to write Shell scripts, how to read user input information? Unfortunately, PHP itself does not have functions or methods to read user input information, but we can follow the example of other languages ​​and write a function to read user input information. Function "read":

Function read() {

 $fp = fopen(/dev/stdin, r);

 $input = fgets($fp, 255);

 fclose($fp);

return $input;

 }

 ?>

It should be noted that the above function can only be used on Unix systems (other systems need to make corresponding changes). The above function will open a file pointer, then read a line of no more than 255 bytes (that's what fgets does), then close the file pointer and return the read information.

Now we can use the function "read" to modify the program 1 we wrote earlier to make it more "interactive":

 #!/usr/local/bin/php -q

Function read() {

 $fp = fopen(/dev/stdin, r);

 $input = fgets($fp, 255);

 fclose($fp);

return $input;

 }

print("What is your first name? ");

 $first_name = read();

print("What is your last name? ");

 $last_name = read();

print(" Hello, $first_name $last_name! Nice to meet you! ");

 ?>

Save the above program and run it. You may see something unexpected: the last line of input becomes three lines! This is because the information returned by the "read" function also includes the user Ending newline character for each line " " is retained in the first and last names. To remove the trailing newline character, you need to modify the "read" function:

Function read() {

 $fp = fopen(/dev/stdin, r);

 $input = fgets($fp, 255);

 fclose($fp);

 $input = chop($input); // Remove trailing blanks

return $input;

 }

 ?>

3. Include Shell scripts written in PHP in Shell scripts written in other languages:

Sometimes we may need to include Shell scripts written in PHP in Shell scripts written in other languages. It’s actually very simple. Here is a simple example:

 #!/bin/bash

echo This is the Bash section of the code.

 /usr/local/bin/php -q << EOF

print("This is the PHP section of the code ");

 ?>

EOF

In fact, it is to call PHP to parse the following code and then output it; then, try the following code again:

 #!/bin/bash

echo This is the Bash section of the code.

 /usr/local/bin/php -q << EOF

$myVar = PHP;

print("This is the $myVar section of the code ");

 ?>

EOF

It can be seen that the only difference between the two codes is that a variable "$myVar" is used the second time. Try running it, and PHP actually gives an error message: "Parse error: parse error in - on line 2" !This is because the variables in Bash are also "$myVar", and the Bash parser replaces the variables first. To solve this problem, you need to add the "" escape character in front of each PHP variable, then The code just now is modified as follows:

 #!/bin/bash

echo This is the Bash section of the code.

 /usr/local/bin/php -q << EOF

$myVar = PHP;

print("This is the $myVar section of the code ");

 ?>

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/486117.htmlTechArticleThis method is urgently needed recently. Record it and try it when you have time^^ Under Linux, you can use crontab + PHP method: 1. Use crontab e to edit the scheduled task content as: xx:xx:xx Execute...
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Have Crossplay?
1 months ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to use docker desktop How to use docker desktop Apr 15, 2025 am 11:45 AM

How to use Docker Desktop? Docker Desktop is a tool for running Docker containers on local machines. The steps to use include: 1. Install Docker Desktop; 2. Start Docker Desktop; 3. Create Docker image (using Dockerfile); 4. Build Docker image (using docker build); 5. Run Docker container (using docker run).

PHP and the Web: Exploring its Long-Term Impact PHP and the Web: Exploring its Long-Term Impact Apr 16, 2025 am 12:17 AM

PHP has shaped the network over the past few decades and will continue to play an important role in web development. 1) PHP originated in 1994 and has become the first choice for developers due to its ease of use and seamless integration with MySQL. 2) Its core functions include generating dynamic content and integrating with the database, allowing the website to be updated in real time and displayed in personalized manner. 3) The wide application and ecosystem of PHP have driven its long-term impact, but it also faces version updates and security challenges. 4) Performance improvements in recent years, such as the release of PHP7, enable it to compete with modern languages. 5) In the future, PHP needs to deal with new challenges such as containerization and microservices, but its flexibility and active community make it adaptable.

PHP: An Introduction to the Server-Side Scripting Language PHP: An Introduction to the Server-Side Scripting Language Apr 16, 2025 am 12:18 AM

PHP is a server-side scripting language used for dynamic web development and server-side applications. 1.PHP is an interpreted language that does not require compilation and is suitable for rapid development. 2. PHP code is embedded in HTML, making it easy to develop web pages. 3. PHP processes server-side logic, generates HTML output, and supports user interaction and data processing. 4. PHP can interact with the database, process form submission, and execute server-side tasks.

What computer configuration is required for vscode What computer configuration is required for vscode Apr 15, 2025 pm 09:48 PM

VS Code system requirements: Operating system: Windows 10 and above, macOS 10.12 and above, Linux distribution processor: minimum 1.6 GHz, recommended 2.0 GHz and above memory: minimum 512 MB, recommended 4 GB and above storage space: minimum 250 MB, recommended 1 GB and above other requirements: stable network connection, Xorg/Wayland (Linux)

What to do if the docker image fails What to do if the docker image fails Apr 15, 2025 am 11:21 AM

Troubleshooting steps for failed Docker image build: Check Dockerfile syntax and dependency version. Check if the build context contains the required source code and dependencies. View the build log for error details. Use the --target option to build a hierarchical phase to identify failure points. Make sure to use the latest version of Docker engine. Build the image with --t [image-name]:debug mode to debug the problem. Check disk space and make sure it is sufficient. Disable SELinux to prevent interference with the build process. Ask community platforms for help, provide Dockerfiles and build log descriptions for more specific suggestions.

Why Use PHP? Advantages and Benefits Explained Why Use PHP? Advantages and Benefits Explained Apr 16, 2025 am 12:16 AM

The core benefits of PHP include ease of learning, strong web development support, rich libraries and frameworks, high performance and scalability, cross-platform compatibility, and cost-effectiveness. 1) Easy to learn and use, suitable for beginners; 2) Good integration with web servers and supports multiple databases; 3) Have powerful frameworks such as Laravel; 4) High performance can be achieved through optimization; 5) Support multiple operating systems; 6) Open source to reduce development costs.

vscode cannot install extension vscode cannot install extension Apr 15, 2025 pm 07:18 PM

The reasons for the installation of VS Code extensions may be: network instability, insufficient permissions, system compatibility issues, VS Code version is too old, antivirus software or firewall interference. By checking network connections, permissions, log files, updating VS Code, disabling security software, and restarting VS Code or computers, you can gradually troubleshoot and resolve issues.

How to view the docker process How to view the docker process Apr 15, 2025 am 11:48 AM

Docker process viewing method: 1. Docker CLI command: docker ps; 2. Systemd CLI command: systemctl status docker; 3. Docker Compose CLI command: docker-compose ps; 4. Process Explorer (Windows); 5. /proc directory (Linux).

See all articles