从php运行C程序

时间:2012-07-05 07:56:50

标签: php c

我有一个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文件。

让你的叔叔小心,再次工作。

谢谢偷看,我确实检查了每个人的建议。有时排除可能的休息有助于关注这个问题。虚拟啤酒(或苏打水)到处都是!

2 个答案:

答案 0 :(得分:1)

叹息......另一个非自助用户...

http://php.net/manual/en/function.exec.php

请注意许可。

答案 1 :(得分:1)

可能不完整的列表可能是:exec()system()shell_exec()backtickspopen()proc_open()passthru()

编辑:

检查此警告:

With safe mode enabled, the command string is escaped with escapeshellcmd(). Thus, echo y | echo x becomes echo y \| echo x.

来自function.popen.php