作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
在 PHP 5.4 中,我有一个 SplObjectStorage 实例,我在其中将对象与一些额外的元数据相关联。然后我需要遍历 SplObjectStorage 的实例并检索与当前键关联的对象。我尝试使用 SplObjectStorage::key 但它不起作用(但可能适用于 PHP 5.5)。
这是我尝试做的简化版本:
$storage = new SplObjectStorage;
$foo = (object)['foo' => 'bar'];
$storage->attach($foo, ['room' => 'bar'];
foreach ($storage as $value) {
print_r($value->key());
}
我真正需要的是某种方法来检索与 key 关联的实际对象。据我所知,甚至不可能用数字索引和 SplObjectStorage 指向的对象手动创建单独的索引数组。
最佳答案
这样做:
$storage = new SplObjectStorage;
$foo = (object)['foo' => 'bar'];
$storage->attach($foo, ['room' => 'bar']);
foreach ($storage as $value) {
$obj = $storage->current(); // current object
$assoc_key = $storage->getInfo(); // return, if exists, associated with cur. obj. data; else NULL
var_dump($obj);
var_dump($assoc_key);
}
关于php - 如何在 PHP 5.4 中遍历 SplObjectStorage 时获取与当前键关联的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21389345/
我是一名优秀的程序员,十分优秀!