在 Windows 上通过 php 执行() cordova 命令

Posted

技术标签:

【中文标题】在 Windows 上通过 php 执行() cordova 命令【英文标题】:exec() cordova command via php on Windows 【发布时间】:2021-05-25 21:21:32 【问题描述】:

我在我的 Windows 系统上使用 xampp,并尝试通过 php exec() 函数运行命令 cordova --version。我尝试直接从路径C:/MyUser/AppData/Roaming/npm/cordova --version 运行cordova,但它不起作用。

这两种情况下exec返回空输出,怎么回事?

【问题讨论】:

所以,它不能直接与 C:/MyUser/AppData/Roaming/npm/cordova --version 一起使用? 不,输出还是空的 当您执行 php exec() 时还有其他工作吗? 【参考方案1】:

我认为问题的发生是因为您以 XAMP 用户身份运行 exec

每个用户都有自己的环境变量,因此您必须定义它们。

$envVars = "PATH=...";
putenv($envVars);

作为一个技巧,您可以使用您的用户打开 CMD 并运行以下命令:

echo %PATH%

这将返回您当前用户的“PATH”环境变量,因此您可以将返回的字符串用作“$envVar”值。 别忘了

将反斜杠“\”转义为“\\” 不要复制所有环境变量,只需选择cordova (npm) 所需的环境变量即可。

【讨论】:

以上是关于在 Windows 上通过 php 执行() cordova 命令的主要内容,如果未能解决你的问题,请参考以下文章

Windows服务器上使用bat定时执行php

从 php 执行 shell 脚本会在 Windows (Xampp) 上打开文件

nginx在我本机windows主机上配置加载不了php模块

如何通过php在Xampp中执行jar文件

如何在windows上配置php环境

在linux上调用php exec函数