php 静态变量的初始化

 更新时间:2009年11月15日 23:05:44   作者:  
php的成员变量可以在声明的同时进行初始化,但是只能用标量进行初始化。
例如:
class A {
public $f1 = 'xxxx';
static public $f2 = 100;
}


如果要将变量赋值为对象,那么只能在构造器中进行初始化,例如:
class A {
private $child;
public function __construct() {
$this->child = new B();
}
}


但是php中并没有一个类似java中的静态构造器/静态块的东西,就没有合适的时机对其进行初始化了。


对于共有的成员还有办法解决,例如:
class A {
static public $child;
}
A::$child = new B();


对于私有的成员似乎就没有什么干净的方法了,只能这样做:
class A {
static private $child;
static public initialize() {
self::$child = new B();
}
}
A::initialize();

相关文章

  • php简单开启gzip压缩方法(zlib.output_compression)

    php简单开启gzip压缩方法(zlib.output_compression)

    网上的教程基本是你抄我来我抄他,不外乎加头加尾或者自构函数两种写法。实际上每个php页面都要去加代码——当然也可以include引用,不过总显得略微麻烦
    2013-04-04
  • php session的锁和并发

    php session的锁和并发

    这篇文章主要介绍了php session的锁和并发,与之相关的现象有请求阻塞、session数据丢失、session数据读不到的问题,感兴趣的小伙伴们可以参考一下
    2016-01-01
  • php适配器模式介绍

    php适配器模式介绍

    Adapter(别名Wrapper)模式:将一个类的接口,转换成客户期望的另一个类的接口。适配器让原本接口不兼容的类可以合作无间
    2012-08-08
  • 三分钟掌握PHP操作数据库

    三分钟掌握PHP操作数据库

    这篇文章主要介绍了PHP如何操作数据库,文中的实例代码讲解非常详细,感兴趣的小伙伴可以参考阅读
    2023-04-04
  • PHP实现的数组和XML文件相互转换功能示例

    PHP实现的数组和XML文件相互转换功能示例

    这篇文章主要介绍了PHP实现的数组和XML文件相互转换功能,结合实例形式分析了php针对xml格式数据与数组相互转换操作技巧,需要的朋友可以参考下
    2018-03-03
  • PHP中的函数嵌套层数限制分析

    PHP中的函数嵌套层数限制分析

    PHP本身的函数嵌套是没有限制的,如果说有限制,也是内存的限制。这是因为PHP的函数嵌套是以栈的形式实现的。对于每个函数都会分配一段内存来存储函数局部的内容。
    2011-06-06
  • php实现在服务器上创建目录的方法

    php实现在服务器上创建目录的方法

    这篇文章主要介绍了php实现在服务器上创建目录的方法,实例分析了php中使用mkdir函数的使用技巧,需要的朋友可以参考下
    2015-03-03
  • PHP连接Access数据库的方法小结

    PHP连接Access数据库的方法小结

    有时候我们在开发一些小程序或简单功能的管理系统,又没有mysql数据库的情况下,就可以使用access了,这里介绍下链接方法
    2013-06-06
  • Yii2框架实现注册和登录教程

    Yii2框架实现注册和登录教程

    这篇文章主要介绍了Yii2框架实现注册和登录教程的相关资料,需要的朋友可以参考下
    2016-09-09
  • PHP 图片合成、仿微信群头像的方法示例

    PHP 图片合成、仿微信群头像的方法示例

    这篇文章主要介绍了PHP 图片合成、仿微信群头像的方法,涉及php针对图片的转换、生成等相关操作技巧,需要的朋友可以参考下
    2019-10-10

最新评论