本文主要是介绍PHP中shell_exec出现问题,windows+PHP+shell_exec()没法执行的缘由,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天使用shell_exec()命令执行wkhtmltopdf.exe 生成pdf文件时,老是没法生成PDF文件,使用var_dump()打印返回值,结果是null。但是检查代码并无什么问题啊?执行程序的目录是
D:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe
好吧,接下来找找缘由。php
一、经过dos执行wkhtmltopdf程序
首先测试经过dos命令行执行wkhtmltopdf程序:
执行成功,没有问题。css
查看pdf文件是否成功生成:
文件一样成功生成。html
这说明程序执行没有问题。web
二、PHP安全模式
网上说PHP安全模式会影响到shell_php()函数的执行。我查了一下,发现php.ini中安全模式只有sql
[SQL]
; http://php.net/sql.safe-mode
sql.safe_mode=Off
没有其余的安全模式。并且安全模式还会影响exec()函数的使用,我以前曾经使用过exec()
这篇关于PHP中shell_exec出现问题,windows+PHP+shell_exec()没法执行的缘由的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!