我使用 C++ 创建了一个示例“.so”文件,它采用两个输入作为参数并返回一个整数,如下所示。
int calc ( int a , int b ) {
return ( a + b );
}
我需要在 PHP 中调用这个“calc”方法并显示它。我搜索并发现“Zend Engine”可以提供帮助,但我可以获得任何简单的示例来尝试。 Zend 引擎是执行此操作的唯一方法,还是有其他方法从 PHP 调用 C++“.so”。
更新:
我在这个案例中使用了 PHP-CPP。
我关注了这个tutorial ,我创建了一个“.so”,我可以从命令行从测试 php 文件调用“.so”中的函数。但我将相同的 testSkeleton.hph”文件复制到“/var/www”文件夹并从浏览器运行,在这种情况下,它不会从“.so”文件调用该函数。
最佳答案
您将编写一个 PHP 扩展,它直接实现您的函数或包装对其他 C/C++ 库的调用。
有关“如何开始编写 PHP 扩展”的一些提示:
- http://devzone.zend.com/303/extension-writing-part-i-introduction-to-php-and-zend/
- http://devzone.zend.com/1435/wrapping-c-classes-in-a-php-extension/
- http://www.sitepoint.com/getting-started-php-extension-development-via-php-cpp/
- http://www.php-cpp.com/
--
注意:基本计算功能已经实现:)
还有更高级的数学内容:http://www.php.net/manual/en/book.math.php
<?php
function add($a, $b)
{
return $a + $b;
}
echo add(5, 10);
?>
关于php - 如何从 PHP 调用 C++ ".so",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24267042/