Ds\Map::remove
(PECL ds >= 1.0.0)
Ds\Map::remove — Removes and returns a value by key
説明
Removes and returns a value by key, or return an optional default value if the key could not be found.
注意:
Keys of type object are supported. If an object implements Ds\Hashable, equality will be determined by the object's
equals
function. If an object does not implement Ds\Hashable, objects must be references to the same instance to be considered equal.
注意:
You can also use array syntax to access values by key, eg.
$map["key"]
.
Be careful when using array syntax. Scalar keys will be coerced to
integers by the engine. For example, $map["1"]
will attempt
to access int(1)
, while $map->get("1")
will
correctly look up the string key.
See Arrays.
パラメータ
key
-
The key to remove.
default
-
The optional default value, returned if the key could not be found.
戻り値
The value that was removed, or the default
value if provided and the key
could not be found in the map.
エラー / 例外
OutOfBoundsException if the key could not be found and a default value was not provided.
例
例1 Ds\Map::remove() example
<?php
$map = new \Ds\Map(["a" => 1, "b" => 2, "c" => 3]);
var_dump($map->remove("a")); // 1
var_dump($map->remove("e", 10)); // 10 (default used)
?>
上の例の出力は、 たとえば以下のようになります。
int(1) int(10)
User Contributed Notes 1 note
Note the syntax
<?php
unset($map[$key]);
?>
is also valid and ran 2x faster on my machine