簡體   English   中英

哪種更有效的方法來將有序對存儲在php中?

[英]Which is the more efficient way to store this ordered pair in php?

以下兩個數據結構中的哪一個“更好”?

array('key'=>array(1,2,3,4))

要么:

array('key',array(1,2,3,4))

也就是說,最好將數組存儲為兩個元素數組中的第二個元素,或者將其存儲為帶有鍵“ key”的單個元素。

出於方便考慮,假定它們是等效的。 我只是很好奇一個人是否比另一個人使用更多的資源。

您可以使用任何一種適合您要存儲的內容。

如果鍵與值數組及其唯一性相關,則使用鍵/值。

擔心在這種情況下使用的資源是微優化和無關緊要的干擾。

如果那是數組的完整大小,那很好。

但是,如果您實際上有一個像

array(
  array('key', array(...)),
  array('key', array(...)),
  array('key', array(...)),
  etc
);

代替

array(
  'key' => array(...),
  'key' => array(...),
  'key' => array(...),
);

這不僅是奇怪的,而且是非常難以理解的。

命名價值的關鍵在於:

“我想要鮑勃的價值”

$bob = $myArray['bob'];

代替

foreach($myArray as $key => $value) {

    if ($value[0] === 'bob') { // the first value of your 2nd type
        $bob = $myArray[1]; // get the next value.
    }

}

當然,對於第二個示例,您可以考慮end() 但是比較2,很明顯第一個例子獲勝!

暫無
暫無

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

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