gpt4 book ai didi

php - 从另一个 PHP 脚本执行 PHP 脚本

转载 作者:IT王子 更新时间:2023-10-29 00:41:49 26 4
gpt4 key购买 nike

如何通过使用 php 手动触发来让我的服务器运行 php 脚本?基本上我有一个非常大的 cronjob 文件,每 2 小时运行一次,但我希望能够自己手动触发该文件,而不必等待它加载(我希望它在服务器端完成)。

编辑:我想从 php 文件执行文件...不是命令行。

最佳答案

您可以从命令行手动调用 PHP 脚本

hello.php
<?php
echo 'hello world!';
?>

Command line:
php hello.php

Output:
hello world!

查看文档:http://php.net/manual/en/features.commandline.php


编辑 OP 编辑​​了问题以添加一个关键细节:该脚本将由另一个脚本执行。

有几种方法。首先也是最简单的,您可以简单地包含该文件。当您包含一个文件时,其中的代码是“执行的”(实际上是解释的)。任何不在函数或类主体中的代码都将被立即处理。查看 include ( docs ) 和/或 require ( docs ) 的文档(注意:include_oncerequire_once 是相关的,但在一个重要方面有所不同。查看文档以了解差异)您的代码将如下所示:

 include('hello.php');
/* output
hello world!
*/

第二个稍微复杂一点的是使用 shell_exec (docs)。使用 shell_exec,您将调用 php 二进制文件并将所需的脚本作为参数传递。您的代码如下所示:

$output = shell_exec('php hello.php');
echo "<pre>$output</pre>";
/* output
hello world!
*/

最后,也是最复杂的,您可以使用 CURL 库来调用文件,就好像它是通过浏览器请求的一样。在此处查看 CURL 库文档:http://us2.php.net/manual/en/ref.curl.php

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.myDomain.com/hello.php");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true)

$output = curl_exec($ch);
curl_close($ch);
echo "<pre>$output</pre>";
/* output
hello world!
*/

所用函数的文档

关于php - 从另一个 PHP 脚本执行 PHP 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8450696/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com