用 php.exe 执行 php 文件
Posted
技术标签:
【中文标题】用 php.exe 执行 php 文件【英文标题】:execute php file with php.exe 【发布时间】:2017-06-27 11:19:03 【问题描述】:我想使用 Xampp 安装的 php.exe 执行一个 php 文件。
Xampp 安装目录是 C:\xampp\ 所以php.exe的路径是C:\xampp\php\php.exe
我更改了 apache 配置文件中的 DOCUMENT_ROOT,所以,我的根目录是驱动器 O:\
我要执行的 php 文件只是在同一文件夹中创建另一个文件。只是看看执行是否有效。
[make.php] 路径 => O:/make.php
<?php
$f=fopen(date("d_m_Y_H_i_s").".txt","a");
fclose($f);
?>
当我打开浏览器并启动http://localhost/make.php 时,txt 文件已正确生成。
所以一切正常!现在我想不使用浏览器而是使用 php.exe 来做同样的事情
右击php.exe,以管理员身份运行,(UAC已禁用且无账户密码)输入“O:\make.php”按回车但没有任何反应...
也尝试使用“O:/make.php”、“make.php”、“php make.php”、“php O:/make.php”、“php O:\make.php”。
有人有什么想法吗?
【问题讨论】:
在命令行中输入php.exe O:\make.php
,或者创建PHP.exe的快捷方式并修改后添加文件。
不起作用,我在 php.exe 上键入此命令,而不是命令提示符或 powershell。已经尝试使用带有“C:/xampp/php/php.exe -f O:/make.php”或反斜杠的 cmd 和 powershell。但还是什么都没有……
您确定它不起作用吗?将脚本更改为 $f = fopen(__DIR__.DIRECTORY_SEPARATOR.date("d_m_Y_H_i_s").".txt","a");
怎么样,这样您就可以确定应该在哪里创建文件?
如果我在浏览器上执行它,它可以工作,但不使用 php.exe T_T
我在这篇文章中找到了解决方案。 ***.com/questions/15597067/…
【参考方案1】:
从 Windows 您必须使用任务计划程序(从控制面板)
创建一个将启动 PHP 二进制文件的新任务,每 5 分钟将 cron.php 脚本路径作为参数
例子:
"c:/pathtophp.exe c:/web_folder/glpi/front/cron.php" 与Wampp
c:/wampphpphp.exe c:/wamp/www/glpi/front/cron.php 使用 Xampp
运行:C:/(…)xampp/php/php.exe -f cron.php
开始于:C:/(…)xampp/htdocs/glpi/front
艾萨克·阿吉拉尔
【讨论】:
【参考方案2】:在 powershell 或 commad 提示符下 php -r "回显 PHP_VERSION;"给出版本
或exe任何其他php命令
【讨论】:
【参考方案3】:因为你使用 XAMPP,你需要像这样指定路径:
C:\xampp\php\php.exe O:/make.php
编辑: 您还可以添加一个变量 Windows 10 和 Windows 8
在搜索中,搜索然后选择:系统(控制面板)
点击高级系统设置链接。
单击环境变量。
在系统变量部分找到 PATH 环境变量并选择它。单击编辑。如果 PATH 环境变量不存在,请单击“新建”。
在编辑系统变量(或新系统变量)窗口中,指定 PATH 环境变量的值。单击确定。单击“确定”关闭所有剩余的窗口。
现在在任何 BATCH 文件 (.bat) 中只需使用 %PHP%。
因此,如果您改变主意并使用另一个包或直接使用 PHP,您只需要更改变量的路径。 ?
【讨论】:
【参考方案4】:您可以编写一个包含以下内容的批处理文件,并将其放在与您的 make.php 文件相同的目录中。
php make.php
使用该批次,您可以执行您的 php 文件。
【讨论】:
以上是关于用 php.exe 执行 php 文件的主要内容,如果未能解决你的问题,请参考以下文章
想请问一下,如何把一个.php文件写成一个bat批处理文件添加到系统计划任务里面让它自动执行?
php.exe php-cgi.exe php-win.exe的区别