Php 如何将zval*转换为对象?

Php 如何将zval*转换为对象?,php,c++,php-extension,Php,C++,Php Extension,我有: PHP\u方法(Car,cls\u ref) { 汽车*汽车; //Car2*obj11; Car2*Car2; zval*obj11; zend_class_entry ce2=zend_fetch_class(“Car2”,sizeof(“Car2”)-1,zend_fetch_class_DEFAULT TSRMLS_CC); if(zend_parse_参数(zend_NUM_ARGS()TSRMLS_CC,“O”&obj11,ce2)=失败){ RETURN_NULL(); }

我有:

PHP\u方法(Car,cls\u ref)
{
汽车*汽车;
//Car2*obj11;
Car2*Car2;
zval*obj11;
zend_class_entry ce2=zend_fetch_class(“Car2”,sizeof(“Car2”)-1,zend_fetch_class_DEFAULT TSRMLS_CC);
if(zend_parse_参数(zend_NUM_ARGS()TSRMLS_CC,“O”&obj11,ce2)=失败){
RETURN_NULL();
}
car\u object*obj=(car\u object*)zend\u object\u store\u get\u object(
getThis()TSRMLS_CC);
/*car2_object*objj=(car2_object*)zend_object_store_get_object(
getThis()TSRMLS_CC);
car2=(objj->car2);
*/  
car=obj->car;
if(car!=NULL){

//cout使用API convert_to_object_ex(值)将zval转换为object。这里,值的类型为**zval

-高拉夫

PHP_METHOD(Car, cls_ref)
{
    Car *car;
    //Car2 *obj11;
    Car2 *car2;
    zval* obj11;
    zend_class_entry ce2 = zend_fetch_class("Car2", sizeof("Car2")-1, ZEND_FETCH_CLASS_DEFAULT TSRMLS_CC);


     if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "O", &obj11,ce2) == FAILURE) {
        RETURN_NULL();
    }

    car_object *obj = (car_object *)zend_object_store_get_object(
        getThis() TSRMLS_CC);
  /*  car2_object *objj = (car2_object *)zend_object_store_get_object(
        getThis() TSRMLS_CC);
       car2=(objj->car2);
    */  
    car = obj->car;
    if (car != NULL) {
        //cout<<"in car 2 ref"<<endl;

        //car2->reference(s);
    //  (car->cls_ref((Car2&)car2));
    car->cls_ref((Car2&)obj11);
    }

}

where void Car::cls_ref(Car2 &obj){...}