PHP 调用C函数
用php调用C函数,常通过调用系统命令函数的方式来实现,其中主要有system()和exec()两种,还有一种是passthru(),这种方法没有尝试,暂不作讨论。system()方法输出并返回最后一行的shell结果。
exec()不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。
相同点是都可以获取命令执行的状态码。
PHP调用C函数方法为:
如果C函数为一个简单的hello world,文件名称为hello.c。
#include <stdio.h>
main()
{
printf("hello world!");
}
首先gcc编译成 gcc hello.c -o hello
然后再php函数中写一个函数:
<?php
$r = exec("./hello");
echo $r;
?>
如果是exec,如果在浏览器中执行结果的话,会出现1个hello world(echo $r产生),如果用system来调用的话,则会出现两个hello world!(./hello和echo $r产生)。
网上说还可以通过php扩展的方式来实现php调用c函数,这个留待以后继续研究。
页:
[1]