我正在移植一些舊的PHP腳本來實現更好的性能。但是,舊的PHP充滿了多維數組。從代碼庫的一些摘錄:Go或Rust中數組的數組?
while (($row = $stmt->fetch(PDO::FETCH_ASSOC)) !== false) {
$someData[$row['column_a']][$row['column_b']] = $row;
}
// ... more queries and stuff
if (isset($moreData['id']) && isset($anotherData['id']) && $someData[$anotherData['id']][$moreData['id']]) {
echo $someData[$anotherData['id']][$moreData['id']];
}
太可怕了,我知道,但我不能改變的邏輯。通過編譯phc,我使整個腳本表現得更好,但轉向程序化,靜態類型的語言似乎是更好的舉措。我怎樣纔能有效地使用Go或Rust來複制這些數據結構?當涉及到檢查索引時,它需要具有容錯能力,腳本週圍有很多issets來檢查數據結構中是否存在標識符。
多維關聯數組很容易(在Rust中;也可能在Go中),真正的問題是鍵和值類型是否一致,因此可以在靜態類型系統中描述。 – delnan 2014-10-04 19:12:28