キーで複数の配列項目の設定を解除するPHP組み込み関数はありますか?
これは、ネイティブと同等のものになります。
foreach($badElements as $k) {
unset($allElements[$k]);
}
または、さらに良い:
$keys = array_keys($badElements);
foreach($keys as $k) {
unset($allElements[$k]);
}
キーで複数の配列項目の設定を解除するPHP組み込み関数はありますか?
これは、ネイティブと同等のものになります。
foreach($badElements as $k) {
unset($allElements[$k]);
}
または、さらに良い:
$keys = array_keys($badElements);
foreach($keys as $k) {
unset($allElements[$k]);
}
削除してループするキーの配列を作成し、明示的に設定を解除できます。例:
$removeKeys = array('name', 'email');
foreach($removeKeys as $key) {
unset($badElements[$key]);
}
または、キーが削除された新しい配列を変数に指すこともできます。
$badElements = array_diff_key($badElements, array_flip($removeKeys));
または、すべての配列メンバーを unset() に渡します。
unset($badElements['name'], $badElements['email'])
以下はin-situ ではないため、要件を完全には満たしていません。しかし、配列をコピーしても問題ないかもしれません:
$v = array("lol"=>"blub", "lal"=>"blab", "lulz"=>"gagh");
$k = array("lol", "lulz");
var_dump(array_diff_key($v, array_flip($k)));