splObjectStroge的作用,实例化一个数组
2015-07-28 22:44
627 查看
PHP SPL SplObjectStorage是用来存储一组对象的,特别是当你需要唯一标识对象的时候。
PHP SPL SplObjectStorage类实现了Countable,Iterator,Serializable,ArrayAccess四个接口。可实现统计、迭代、序列化、数组式访问等功能。
看下面一个简单的例子:
class A {
public $i;
public function __construct($i) {
$this->i = $i;
}
}
$a1 = new A(1);
$a2 = new A(2);
$a3 = new A(3);
$a4 = new A(4);
$container = new SplObjectStorage();
//SplObjectStorage::attach 添加对象到Storage中
$container->attach($a1);
$container->attach($a2);
$container->attach($a3);
//SplObjectStorage::detach 将对象从Storage中移除
$container->detach($a2);
//SplObjectStorage::contains用于检查对象是否存在Storage中
var_dump($container->contains($a1)); //true
var_dump($container->contains($a4)); //false
//遍历
$container->rewind();
while($container->valid()) {
var_dump($container->current());
$container->next();
}
转载请注明地址: /article/1302832.html 尊重他人劳动成果就是尊重自己!
PHP SPL SplObjectStorage类实现了Countable,Iterator,Serializable,ArrayAccess四个接口。可实现统计、迭代、序列化、数组式访问等功能。
看下面一个简单的例子:
class A {
public $i;
public function __construct($i) {
$this->i = $i;
}
}
$a1 = new A(1);
$a2 = new A(2);
$a3 = new A(3);
$a4 = new A(4);
$container = new SplObjectStorage();
//SplObjectStorage::attach 添加对象到Storage中
$container->attach($a1);
$container->attach($a2);
$container->attach($a3);
//SplObjectStorage::detach 将对象从Storage中移除
$container->detach($a2);
//SplObjectStorage::contains用于检查对象是否存在Storage中
var_dump($container->contains($a1)); //true
var_dump($container->contains($a4)); //false
//遍历
$container->rewind();
while($container->valid()) {
var_dump($container->current());
$container->next();
}
转载请注明地址: /article/1302832.html 尊重他人劳动成果就是尊重自己!
相关文章推荐
- Objective-C编码规范:26个方面解决iOS开发问题
- instancetype 与 id for Objective-C
- Objective-C中的加号与减号
- Object类、JAVA反射机制、Annotation功能
- IOS-1-Objective-C-@property属性的使用及注意问题:@property(assign)int name;
- Groovy Meta Object Protocol
- Objective-C property详解
- Object-C中常用的方法及其功能
- a different object with the same identifier value was already 。。 。。 。 。 解决方法
- 后台发送json数据,将List转化成json数据时执行到JSONArray distJson=JSONArray.fromObject(ChapterList)就报错的问题解决方案
- 基于ArcObject河流渐变效果实现
- OC基础12:数字、字符串和集合1
- 详解Objective-C的meta-class
- Windchill学习之WTObject主内容打包下载
- MediaPlayer类介绍-----继承自object
- 使用C++在CAD中添加菜单栏(ObjectARX)
- C# Dictionary<String, object> 字典嵌套 循环遍历
- js:{}与new Object()的区别是什么
- objective-c优雅的语法
- Objective-C字符串处理