php与c代码之间的变量传递

winds18 发布于 2012/11/20 19:53
阅读 401
收藏 0
PHP

@苗雨顺 你好,想跟你请教个问题:有没有什么方式使得c代码运行的结果保存到php变量里?

加载中
0
苗雨顺
苗雨顺

system()函数只能返回最后一行的结果,想要返回完整结果还需要用exec()或者passthru()

将c代码编译成可执行文件,比如完整路径是/home/rain/hello 那么示例就是这样的:

<?php
exec('/home/rain/hello',$var);
print_r($var);

如果你问的是PHP中使用tcc运行C代码,将结果返回给PHP的话。这个没认真研究过,不知道有没有现成的方法,不过你可以通过中转的方式将结果告诉PHP,比如将执行结果保存在临时文件或者memcache中,PHP去访问就可以了。

0
winds18
winds18
请问用system()的,能否具体些,麻烦了,本人是菜鸟
0
justjavac
justjavac
@苗雨顺 +1。用exec可以,第二个参数就是输出。 我以前为了图省事,没用c写php扩展或者apache扩展,就是用exec实现的。
0
winds18
winds18

引用来自“苗雨顺”的答案

system()函数只能返回最后一行的结果,想要返回完整结果还需要用exec()或者passthru()

将c代码编译成可执行文件,比如完整路径是/home/rain/hello 那么示例就是这样的:

<?php
exec('/home/rain/hello',$var);
print_r($var);

如果你问的是PHP中使用tcc运行C代码,将结果返回给PHP的话。这个没认真研究过,不知道有没有现成的方法,不过你可以通过中转的方式将结果告诉PHP,比如将执行结果保存在临时文件或者memcache中,PHP去访问就可以了。

好的 这个方法我去试下。

再请教大神一个问题,是关于在ubuntu 32位系统上安装php的tcc扩展,结果报错,提示为:

checking for tcc files in default path... not found
configure: error: Please reinstall the tcc distribution
ERROR: `/tmp/pear/temp/tcc/configure' failed
请问有什么问题可以解决?
饶智闽
饶智闽
we
0
南湖船老大
南湖船老大

引用来自“winds18”的答案

引用来自“苗雨顺”的答案

system()函数只能返回最后一行的结果,想要返回完整结果还需要用exec()或者passthru()

将c代码编译成可执行文件,比如完整路径是/home/rain/hello 那么示例就是这样的:

<?php
exec('/home/rain/hello',$var);
print_r($var);

如果你问的是PHP中使用tcc运行C代码,将结果返回给PHP的话。这个没认真研究过,不知道有没有现成的方法,不过你可以通过中转的方式将结果告诉PHP,比如将执行结果保存在临时文件或者memcache中,PHP去访问就可以了。

好的 这个方法我去试下。

再请教大神一个问题,是关于在ubuntu 32位系统上安装php的tcc扩展,结果报错,提示为:

checking for tcc files in default path... not found
configure: error: Please reinstall the tcc distribution
ERROR: `/tmp/pear/temp/tcc/configure' failed
请问有什么问题可以解决?
别尝试了。。
0
饶智闽
饶智闽
http:WWW.baud.com
返回顶部
顶部