• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

SPL-数据结构4SplObjectStorage

php 搞代码 3年前 (2022-02-28) 14次浏览 已收录 0个评论

Splobjectstorage 是spl规范库中的数据对象容器,用来存储一组对象。特地是当须要惟一标识对象的时候。

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() . PHP_EOL;

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

$lisi2 = new Person("李四");
echo "指定新对象:";
var_dump($container->contains($lisi2)) . PHP_EOL;

echo "删除指定对象";
$container->detach($wangwu);
echo PHP_EOL;

//查看以后指针所在的索引地位
echo "指针索引" . $container->key() . PHP_EOL;

while ($container->valid()) {
    //获取以后指针地位的对象
    $object = $container->current();
    var_dump($object);
    echo "对象名称:" . $object->name . PHP_EOL;
    //存储空间指针下移
    $container->next();
}

上一篇:SPL 数据结构3-SplFixedArray


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:SPL-数据结构4SplObjectStorage
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址