我有一个C程序,我编译成一个叫做crunch的exe。
它需要一个字符串并返回一个哈希字符串。它已经工作了很长时间,但我只需要做一点改动。它在终端中完美运行:
./crunch url-string/with-file.jpg
吐出一个漂亮的哈希字符串。在我的PHP中,我一直在执行它:
$crunch = '~/domains/somewhere.net/html/api/crunch';
$code = `$crunch $code`;
$code = mysql_real_escape_string(trim($code));
$ code最初是一个URL,它是一个URL。它一直在返回一个哈希值,但现在已经没有了。
我已经重新编译了C几次。只是不明白,我尝试过php exec(),passthru()。
FIXED:
问题是我的Mac Unix发行版和linux服务器之间的区别。修复是登录我的服务器并在那里编译.c文件。
让你的叔叔小心,再次工作。
谢谢偷看,我确实检查了每个人的建议。有时排除可能的休息有助于关注这个问题。虚拟啤酒(或苏打水)到处都是!
答案 0 :(得分:1)
答案 1 :(得分:1)
可能不完整的列表可能是:exec()
,system()
,shell_exec()
,
backticks
,popen()
,proc_open()
,passthru()
。
编辑:
检查此警告:
With safe mode enabled, the command string is escaped with escapeshellcmd(). Thus, echo y | echo x becomes echo y \| echo x.