我正在为个人项目创建一个 PHP 扩展。除了上面文章中的链接之外,我对 zend_engine 没有任何了解,而且我的 C 技能已经过时了 10 年,而且只是学术性的。所有这些都是在说“如果看起来我在问一个愚蠢的问题,我可能是”。
是否可以在我自己的扩展中调用其他 PHP 扩展中的函数,或者每个 PHP 扩展都被视为一个孤岛,对系统的其他部分没有洞察力?如果这是可能的,这是常见的做法,还是一个坏主意™?
也就是说,我知道我可以返回一个类似这样的字符串。
PHP_FUNCTION(hello_world)
{
char *str;
str = estrdup("Hello World");
RETURN_STRING(str, 0);
}
我希望能够返回一个 SimpleXML 元素或一个 DomDocument 元素。谷歌搜索已被证明是困难的,因为没有大量关于扩展开发的内容,而且有大量关于标准 PHP 使用的内容。