如何在PHP扩展类中设置静态类属性?

murgatroid99

我正在用C编写一个PHP扩展,其中包括用C定义的PHP类。我想在其中一个类上设置静态属性。特别是,我想用C做相当于

class Example{
  public static $member;
}

Example::member = new Example();

我不能使用REGISTER_*_CONSTANT宏来执行此操作,因为该值必须是一个对象。我检查了官方文档,但有关类的部分为空。

cra

您实际上不能注册静态属性,而只需要更新它,然后让PHP为您注册即可。

http://php.undmedlibrary.org/manual/en/zend-api.zend-update-static-property.php

// int zend_update_static_property         ( zend_class_entry* $scope, char* $name, int $name_length, zval* $value,        magic $TSRMLS_DC )
int prop_set = zend_update_static_property ( my_example_class_entry,   "member",    7,                my_instance          TSRMLS_CC);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在PHP中记录静态类属性

来自分类Dev

如何在@Immutable类中设置超类属性?

来自分类Dev

如何在扩展函数中获取Dagger2类属性?

来自分类Dev

如何在扩展函数中获取Dagger2类属性?

来自分类Dev

如何在 Python 中创建类之间的共享类属性

来自分类Dev

如何在静态类中绑定属性?

来自分类Dev

在静态类中设置属性

来自分类Dev

如何在静态类中访问textblock或UI元素并设置属性

来自分类Dev

如何在 PHP 中创建静态类

来自分类Dev

如何在PHP中定义静态属性?

来自分类Dev

如何在Swift类扩展中创建“静态”?

来自分类Dev

如何在ES Next中扩展静态属性?

来自分类Dev

如何在类属性中存储函数?

来自分类Dev

如何在 Groovy 中打印类属性?

来自分类Dev

如何在Python的类中引用静态属性?

来自分类Dev

如何在C#中的JsonNet中设置DeserializeObject时的类属性

来自分类Dev

如何设置泛型类的基类属性

来自分类Dev

将类属性设置为 VBA 中的类?

来自分类Dev

Python:类本身的静态类属性

来自分类Dev

如何在PHP中设置类变量?

来自分类Dev

如何在父类文档字符串中引用子类属性?

来自分类Dev

如何在 angularjs 的 html 类属性中添加动态 css 类?

来自分类Dev

如何在DateInterval扩展类中创建days属性?

来自分类Dev

如何在类属性中分配值类

来自分类Dev

如何在类属性定义中使用类方法

来自分类Dev

如何在类属性中分配值类

来自分类Dev

如何在类属性内设置对象数组

来自分类Dev

如何在Python中将类属性设置指定的次数

来自分类Dev

自己的类中的类属性