使用exec()执行外部php文件

使用exec()执行外部php文件,php,Php,我不熟悉exec函数,需要帮助执行外部php文件。我的文件代码如下 Script.php(主文件): execute.php(调用文件): for($i=0;$i首先,正如大家在评论中所说的,这里根本不需要exec(),您可以包含该文件 无论如何,exec()函数执行外部程序。一个.php文件不是一个程序,它只是一个由一个名为php的程序执行的脚本 因此,您可以像这样运行它: exec('php ' . $path, $output,$return); php还可以要求您提供其可执行文件的

我不熟悉exec函数,需要帮助执行外部php文件。我的文件代码如下

Script.php(主文件):


execute.php(调用文件):


for($i=0;$i首先,正如大家在评论中所说的,这里根本不需要
exec()
,您可以
包含该文件

无论如何,
exec()
函数执行外部程序。一个
.php
文件不是一个程序,它只是一个由一个名为php的程序执行的脚本

因此,您可以像这样运行它:

exec('php ' . $path, $output,$return);
php
还可以要求您提供其可执行文件的完整路径,如果它在全球范围内不可用


exec
用于执行系统功能,而不是运行脚本。(请参阅手册,它提供了帮助:)

要实现所需,可以将路径传递给php可执行文件,并将脚本添加为参数,如下所示:

<?php
$phpExecutable = 'C:/xampp/bin/php.exe' 
$path = 'C:/xampp/htdocs/user/execute.php';
exec($phpExecutable." ".$path, $output,$return);
var_dump($return);
echo "hi"."<br>";
echo "end";?>

我不知道你的php可执行文件在哪里,所以请根据你的位置调整它

快乐编码。

添加

exec("php execute.php > /dev/null &");

解决了我的问题。

谢谢大家。
exec()
为什么只需要包含文件?!但是…为什么要用exec()运行它?我想不出有什么理由这样做。
exec('php'.$path,$output,$return);
您可能需要将
php
更改为可执行文件的完整路径。查看输出缓冲你好,我想运行exec函数,因为我需要在后台放置一个函数,直到我在formIt上完成一个特定操作。也可能是您需要使用“C:/xampp/bin/php cli.exe”@mondjunge:我尝试了您的代码,但仍然没有成功我会看到,在我的另一个被调用的文件被执行后,它正在执行主文件。我需要调用被调用的文件并将其置于后台,使主文件工作到那时。请帮助我。我从未在PHP中使用过子进程。这是可能的,但你需要自己解决它或提出一个新问题。这是你拥有的PHP函数bly需要做你想做的事情:Observer/Obserable模式也应该有帮助,但我不确定这在PHP中是否可行。哦,是的,Observer/Obserable在PHP中是可行的:这是针对linux系统的,你的问题是针对windows系统的代码。你是一个愚蠢的开发人员Rebecca。:P;)@mondjunge:我使用了u建议的相同答案,但唯一的区别是exec语句,因为我需要在后台执行另一个文件,对于您的代码,我必须等待另一个文件执行。。。。。
<?php
$phpExecutable = 'C:/xampp/bin/php.exe' 
$path = 'C:/xampp/htdocs/user/execute.php';
exec($phpExecutable." ".$path, $output,$return);
var_dump($return);
echo "hi"."<br>";
echo "end";?>
exec("php execute.php > /dev/null &");