(PECL ds >= 1.0.0)
Ds\Map::get — 傳回指定鍵的值
傳回指定鍵的值,如果找不到鍵,則傳回選擇性的預設值。
注意事項:
支援 object 類型的鍵。如果物件實作了 Ds\Hashable,則相等性將由物件的
equals
函式決定。如果物件未實作 Ds\Hashable,則物件必須參考同一個實例才會被視為相等。
注意事項:
您也可以使用陣列語法透過鍵存取值,例如
$map["key"]
。
使用陣列語法時請務必小心。純量鍵值會被引擎強制轉換為整數。例如,$map["1"]
會嘗試存取 int(1)
,而 $map->get("1")
則會正確地查找字串鍵值。
參見 陣列。
key
要查找的鍵值。
default
可選的預設值,如果找不到鍵值則返回此值。
對應給定 key
的值,或者如果提供 default
值且在映射中找不到鍵值,則返回該預設值。
如果找不到鍵值且未提供預設值,則會拋出 OutOfBoundsException 例外。
範例 #1 Ds\Map::get() 範例
<?php
$map = new \Ds\Map(["a" => 1, "b" => 2, "c" => 3]);
var_dump($map->get("a")); // 1
var_dump($map->get("d", 10)); // 10 (使用預設值)
?>
上述範例將輸出類似以下的內容
int(1) int(10)
範例 #2 Ds\Map::get() 使用陣列語法的範例
<?php
$map = new \Ds\Map(["a" => 1, "b" => 2, "c" => 3]);
var_dump($map["a"]); // 1
?>
上述範例將輸出類似以下的內容
int(1)