包装自定义 php 扩展
我正在尝试从 C 库包装一个自定义 php 扩展,现在我有一个初始化函数,它启动一个特定的自定义连接,并且似乎很昂贵,我不应该在每次调用该函数时都运行它。
假设我在 ZEND 包装器中有以下内容,
PHP_FUNCTION(get_data){
conn = conn_init();
data = getdata(conn);
return data;
}
conn_init()
是一个昂贵的调用,我应该将该函数放在哪里?
我可以要求用户从 PHP 调用 conn_init()
以及如何调用吗?
I'm trying to wrap a custom php extension from a C library, now I have an Initializer function which initiate a specific custom connection and seems to be expensive one and i should not run it each time I call the function.
Let's suppose that I have the following in the ZEND wrapper,
PHP_FUNCTION(get_data){
conn = conn_init();
data = getdata(conn);
return data;
}
conn_init()
is an expensive call here, where should I put that function?
and can I ask users to call conn_init()
from PHP and how?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看起来你应该将
conn
包装为 资源< /a>.然后使用您的扩展的脚本可能看起来像
Looks like you should wrap
conn
as a resource.Then a script using your extension could look like