首頁  >  文章  >  後端開發  >  Array和SplFixedArray比較(程式碼範例)

Array和SplFixedArray比較(程式碼範例)

藏色散人
藏色散人轉載
2019-05-08 09:23:072519瀏覽

PHP 的精髓就是陣列的運用,陣列玩得好可以用於所有資料結構。有個叫SPL的好東西,裡面有很多資料結構可供我們使用,效能也比我們使用陣列實現的好很多。

今天來看看SplFixedArray,顧名思義,固定大小的陣列。實例化時,指定數組大小,使用過程中不可擴充數組、縮小。

所以如果你有對數組進行動態操作時,可能就不太適合用它,而且SplFixedArray的索引只能是數字,不可以作為鍵值數組使用。

以下是測試Array和SplFixedArray的100W 次讀寫效能以及記憶體佔用

程式碼

執行結果

[Array]
Memory: 33558608 bytes
Write Time: 0.083034038543701s
Read Time: 0.022516965866089s
[SplFixedArray]
Memory: 16003208 bytes
Write Time: 0.037343978881836s
Read Time: 0.022947072982788s

結論

記憶體佔用:SplFixedArray 比Array 能節省一半多的記憶體

寫入效能:SplFixedArray 比Array 更快

讀取效能:五五開,多次測試下來Array 讀取速度甚至更快一些

如果你能確定只需要使用索引數組,並且能預測該數組的成員數,那顯然用SplFixedArray更適合一些。

以上是Array和SplFixedArray比較(程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yurunsoft.com。如有侵權,請聯絡admin@php.cn刪除