偶爾,我發現我需要對一些對象進行排序,並將它們按多個值進行分組。我通常通過將值連接在一起來實現這一點,在其間使用下劃線或其他劃線員,然後將其用作數組索引。有多個值的哈希方法?
// group all objects with a common parent_id, date, and type
foreach ($objects as $obj) {
$hash = $obj->parent_id . '_' . $obj->date . '_' . $obj->type;
$sorted_objects[$hash][] = $obj;
}
... ick!要比濫用PHP的寬鬆輸入和字符串連接有更好的方法。有沒有辦法對多個值執行散列?看來我應該能夠只是做這樣的事情:我已經用最好的方法
$hash = sha1_multiple($obj->parent-id, $obj->date, $obj->type);
上午,還是有更好的辦法?
它沒有得到比簡單字符串連接更快的速度 – 2011-03-11 18:07:56
即使SHA1步驟不應該是必需的,除非您需要所有的鍵都是相同的字符串長度。 – caw 2011-03-13 19:29:32