PHP标准库(SPL)学习之SplObjectStorage

发布于 2017-03-07 03:51:35 阅读 274

示例1

<?php
// As an object set
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;
$o3 = new StdClass;

$s->attach($o1);
$s->attach($o2);

var_dump($s->contains($o1));//true
var_dump($s->contains($o2));//true
var_dump($s->contains($o3));//false

$s->detach($o2);

var_dump($s->contains($o1));//true
var_dump($s->contains($o2));//false
var_dump($s->contains($o3));//false

示例2

<?php
// As a map from objects to data
$s = new SplObjectStorage();

$o1 = new StdClass;
$o2 = new StdClass;
$o3 = new StdClass;

$s[$o1] = "data for object 1";
$s[$o2] = array(1,2,3);

if (isset($s[$o2])) {
    var_dump($s[$o2]);
}
if(isset($s[$o1])) {
    var_dump($s[$o1]);
}