我的经验水平:对 C 非常熟悉,对 PHP 很熟悉,对 Zend Engine 很陌生并且很沮丧(没有文档?)
我正在尝试编写我的第一个 PHP 扩展,我想知道以下是否可能。
说明我的目标的 PHP 代码:
class MyClass
{
public function foo($bar)
{
(stuff that runs extremely slowly in PHP)
return "result";
}
}
$a = new MyClass();
echo "Watch how slow this is: ", $a->foo();
tell_my_custom_php_extension_to_replace_foo_with_my_reimplementation_of_foo_in_c("MyClass");
echo "Wow, now it's wonderfully fast! See: ", $a->foo();
另外,我知道我可以重写 foo 来调用扩展所公开的函数,但这对我来说并不有趣。我只是想知道上面的例子(PHP类不知道并且不与扩展合作)是否可行。