gpt4 book ai didi

php - 构建 PHP 扩展并使用 call_user_function

转载 作者:行者123 更新时间:2023-11-30 17:56:20 25 4
gpt4 key购买 nike

我编写了一个代码来构建一个扩展,通过 mysql_connect 连接到 mysql 数据库。

我的代码已编译,但是当我想在 PHP 中使用我的函数时,它会出现循环并且可能无法工作。这是我的 C++ 代码:

PHP_FUNCTION(ig_connect_to_database)
{
zval fname, *args[3], *retval = NULL;

ZVAL_STRING(&fname, "mysql_connect", 0);

MAKE_STD_ZVAL(args[0]);
ZVAL_STRING(args[0], "localhost", 1);

MAKE_STD_ZVAL(args[1]);
ZVAL_STRING(args[1], "root", 1);

MAKE_STD_ZVAL(args[2]);
ZVAL_STRING(args[2], "", 1);

if (call_user_function(EG(function_table), NULL, &fname, retval, 3, args TSRMLS_CC) == SUCCESS) {

zval_ptr_dtor(&retval);
zval_ptr_dtor(&args[1]);
zval_ptr_dtor(&args[0]);
}

}
<小时/>

有人可以帮助我吗?

我只想返回我的资源连接。

我知道“retval”是我的资源,但我不知道如何将此资源返回到我的 php 代码中。

最佳答案

我不知道我是否回答了我的问题,但我的问题已通过以下代码解决:

*return_value = retval;
zval_copy_ctor(return_value);

关于php - 构建 PHP 扩展并使用 call_user_function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13660407/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com