linux系统下定时执行php脚本的方法
<p><strong>前言</strong></p>
<p>
在windows服务端定时执行某个程序代码还是比较简单的,只要在系统中做定时任务就可以了,目前刚刚接触到linux下的定时任务,这在好多公司的面试中都会提到的,而对于linux小白的我来说,是个不小的挑战,听单位的同事说,linux定时执行PHP脚本也是很简单的,linux系统实现计划任务一般采用crontab工具,好了,目前分享一个可以执行成功的php脚本,供大家参考了。</p>
<p>
1. 在需要定时执行的PHP文件的第一行加</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterphp" id="highlighter_859947">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="php plain">view plain </code><code class="php functions">copy</code>
</div>
<div class="line number2 index1 alt1">
<code class="php spaces"> </code>
</div>
<div class="line number3 index2 alt2">
<code class="php plain">#! /bin/local/php -q</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
其中 /bin/local/php 是自己的php.exe 所在的位置</p>
<p>
2. 上传要定时执行的php文件到一个位置,可以通过/path/to/your/php/script.php 访问到。并且要把PHP变成可执行的脚本文件。在命令行下,脚本所在目录</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterphp" id="highlighter_401527">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="php plain">view plain </code><code class="php functions">copy</code>
</div>
<div class="line number2 index1 alt1">
<code class="php spaces"> </code>
</div>
<div class="line number3 index2 alt2">
<code class="php functions">chmod</code> <code class="php plain">+x script.php</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
3. 打开编辑crontab文件</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_941756">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">view plain copy </code>
</div>
<div class="line number2 index1 alt1">
<code class="bash spaces"> </code>
</div>
<div class="line number3 index2 alt2">
<code class="bash functions">vi</code> <code class="bash plain">/etc/crontab</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
在里面添加如:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_487328">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">view plain copy </code>
</div>
<div class="line number2 index1 alt1">
<code class="bash spaces"> </code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain">01 6 * * * root -q </code><code class="bash plain">/bin/local/php</code> <code class="bash plain">/path/to/your/php/script</code><code class="bash plain">.php</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
这个意思就是每天6点01分执行script.php</p>
<p>
在等待定时执行之前也可以先在Linux下尝试/bin/local/php /path/to/your/php/script.php,如果能运行成功了,说明就可以了,然后就可以等待定时运行了。</p>
<p>
这样就可以了,注意script.php本身代码中不能有相对路径之类的,需要时在linux中的绝对路径。</p>
<p>
终于测试成功。</p>
<p>
<strong>总结</strong></p>
<p>
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。</p>
頁:
[1]