php调用exe问题

php调用exe问题,第1张

PHP里面exec其它命令可以成功执行,而调用特定的程序没有成功,我推测有三个方面的原因:

一是APACHE的进程(估计是httpd.exe)身份与你命令行执行的是否相同,可以在进程管理器里面查看。

二是环境不同,你的julia是否需要某些特定环境变量支持,PHP执行的时候这些环境变量是否都有,可以在PHPINFO()里面查看。

三是相对路径不同,命令行下执行时系统查找文件的环境不同,试试看这样写:

exec(" julia 12.jl")

修改为:

exec("c:\\julia\\julia.exe d:\\jl\\12.jl")

此外,你的调试信息显示stderr异常,是否julia必须依赖stderr。还有,julia是CONSOLE环境还是GUI程序,如果是CONSOLE的,能否使用-?或者-v参数显示简单信息,用以测试调用julia是否成功,例如你的julia支持julia -version显示版本号,那么你可以在PHP里面这样写:

exec(" julia -version")

查看命令行和浏览器里面的效果。

在尝试调用之前,至少你需要了解一定的知识才可以。

你的PHP环境是在Linux服务器还是Windows服务器上?如果是Linux服务器,那么是不支持exe程序运行的。

你的程序需要放在php文件能访问的目录中。当然,你必须能够访问PHP服务器才可以。如果只是客户端,那是没用的。PHP不能访问客户端的程序。

system或者exec都可以执行文件。不过没有尝试Windows下访问某个特定的程序。

下面是一个例子。使用exec执行‘whoami’程序。

<?php

// outputs the username that owns the running php/httpd

process

// (on a system with the "whoami" executable in the

path)

echo exec('whoami')

?> 

exec()

system()

都是针对window平台的,主要设置权限,如果你的服务股其liunx,最好是用php执行一些脚本文件

查看原帖>>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12010572.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存