如何在php扩展中返回$this

How to return $this in a php Extension?

本文关键字:返回 this 扩展 php      更新时间:2023-10-16

例如,Dataset对象的此方法返回NULL,如何使其返回$this

PHP_METHOD(TSet, nextLine)
{
    TSet *MySet;
    tset_object *obj = (tset_object *)zend_object_store_get_object(getThis() TSRMLS_CC);
    MySet = obj->DataSet;
    if (MySet != NULL) {
        MySet->nextLine();
    }
    RETURN_NULL();
}

尝试

zval *object = getThis();
RETURN_ZVAL(object,false,false);

给我一个错误
只是为了确定这个

RETURN_ZVAL(getThis(),false,false);

结果相同

RETURN_ZVAL(getThis(),1,0);

是正确的答案,但不确定为什么
来自http://www.snailinaturtleneck.com/blog/2011/08/11/php-extensions-made-eldrich-classes/#comment-466980122