SPL之SplObjectStorage对象存储

<?PHP
/**
 * Created by PHPStorm.
 * User: zrj
 * Date: 18-4-24
 * Time: 下午8:37
 */

class Person
{
    public $name;

    public function __construct(string $name)
    {
        $this->name = $name;
    }
}

//实例化对象
$zhangsan = new Person('张三');
$lisi = new Person('李四');
$wangwu = new Person('王五');
$zhaoliu = new Person('赵六');

//实例化对象存储
$container = new SplObjectStorage();

//往存储空间写入对象
$container->attach($zhangsan);
$container->attach($lisi);
$container->attach($wangwu);
$container->attach($zhaoliu);

//统计存储空间里面的对象的数量
echo "存储对象数量" . $container->count();
echo "<br/>";

//判断指定的对象是否在存储空间中
echo "是否包含指定对象:";
var_dump($container->contains($lisi));
echo "<br/>";

//从存储中删除指定对象
echo "删除指定对象";
$container->detach($wangwu);

//查看当前指针所在的索引位置
echo "指针索引" . $container->key();
echo "<br/>";

//重置存储空间指针
$container->rewind();

//校验当前指针是否有效
var_dump($container->valid());


//遍历存储空间
echo "<pre>";
while ($container->valid()) {

    //获取当前指针位置的对象
    var_dump($container->current());

    //存储空间指针下移
    $container->next();
}

相关文章

这篇文章主要介绍“hive和mysql的区别是什么”,在日常操作中...
这篇“MySQL数据库如何改名”文章的知识点大部分人都不太理解...
这篇文章主要介绍“mysql版本查询命令是什么”的相关知识,小...
本篇内容介绍了“mysql怎么修改字段的内容”的有关知识,在实...
这篇文章主要讲解了“mysql怎么删除unique约束”,文中的讲解...
今天小编给大家分享一下mysql怎么查询不为空的字段的相关知识...