首頁 >後端開發 >php教程 >无证程序员被拘留后——linux能正常运行的程序,php系统调用时却不能运行!解决方案

无证程序员被拘留后——linux能正常运行的程序,php系统调用时却不能运行!解决方案

WBOY
WBOY原創
2016-06-13 10:17:07986瀏覽

无证程序员被拘留后——linux能正常运行的程序,php系统调用时却不能运行!!!!!
我自己的cli程序,在linux下能正常运行(带参数的),但用php的exec调用后却不能执行,
还有,返回的数组用isset测试不为空,输出时又没数据。
可以肯定的是linux与php均无问题,因为其他程序都正常,叫这一个。

这是怎么回事?这种问题从哪个入手?从没遇到过。

有点急,马上要提交源码了!!!!!!!!!!!!

我有个软考的DS证书,应该不会被拘留吧,哈哈……

------解决方案--------------------
用system调用试试
------解决方案--------------------
是不是用户权限的问题啊
------解决方案--------------------
话说回来 php的exec下的操作不是一般的有问题,我以前试过测试个代码就是死活不能...最后只好放弃
------解决方案--------------------
权限设置为 -rwxr-xr-x

把所有的错误信息打开,看看报什么错误!
------解决方案--------------------

探讨
代码不好贴啦,而且也不会有问题啦。
我用php拼接的带参数的命令原模原样的复制在linux上运行是可以,而且得到了正确的输出。

------解决方案--------------------
不止是用户权限,还有运行环境,也可能有差异,所以要你把 exec() 那一行的代码贴出来呀。

虽然真正的原因不一定在这里,虽然这不一定能解决你的问题,但你总不能让大家猜你的做法来判断原因吧?
------解决方案--------------------
几乎可以肯定是你的 a.out 在 -L 3 的情况下执行了某些犯禁的操作。

BTW: 当 $result = false 的时候就会出现“isset($result) == 1 而且 print_r($result) 为空”的情况,这没有什么奇怪的。
------解决方案--------------------
探讨
几乎可以肯定是你的 a.out 在 -L 3 的情况下执行了某些犯禁的操作。

BTW: 当 $result = false 的时候就会出现“isset($result) == 1 而且 print_r($result) 为空”的情况,这没有什么奇怪的。
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn