簡體   English   中英

SplObjectStorage的自定義迭代

[英]Custom iteration for SplObjectStorage

我想修改迭代SPLObjectStorage對象的方式,例如首先按數據(信息)對其進行排序。

因此,在一個循環中,它在數值上從a到z(使用sort()函數)

但是,在SPLObjectStorage中,無法訪問數組,對嗎?

因為我們沒有訪問對象數組的權限,所以有可能這樣做嗎?

不,不可能。 在內部, SplobjectStorage使用與數組( HashTable )相同的數據結構,但是它不是我們從PHP用戶區知道的“數組-數組”:我們僅添加值而不是鍵,因為鍵實際上是通過散列從值中生成的它們(您甚至可以通過覆蓋getHash方法來覆蓋它)。 另一個區別是,您可以另外向對象添加信息。

簡而言之,不應將SplObjectStorage用作數組,而應將其作為集合或映射來使用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM