Câu trả lời:
Bạn có thể sử dụng unset
:
unset($array['key-here']);
Thí dụ:
$array = array("key1" => "value1", "key2" => "value2");
print_r($array);
unset($array['key1']);
print_r($array);
unset($array['key2']);
print_r($array);
Đầu ra:
Array
(
[key1] => value1
[key2] => value2
)
Array
(
[key2] => value2
)
Array
(
)
foreach
vòng lặp, thì bạn cần phải thêm một dấu và vào biến liệt kê để cho phép truy cập ghi.
Sử dụng chức năng này để loại bỏ các mảng phím cụ thể mà không sửa đổi mảng gốc:
function array_except($array, $keys) {
return array_diff_key($array, array_flip((array) $keys));
}
Param đầu tiên vượt qua tất cả mảng, param thứ hai thiết lập mảng các phím cần loại bỏ.
Ví dụ:
$array = [
'color' => 'red',
'age' => '130',
'fixed' => true
];
$output = array_except($array, ['color', 'fixed']);
// $output now contains ['age' => '130']
$output = array_except($array_1, ['color', 'fixed']);
Hãy xem xét mảng này:
$arr = array("key1" => "value1", "key2" => "value2", "key3" => "value3", "key4" => "value4");
Để loại bỏ một phần tử bằng cách sử dụng mảng key
:
// To unset an element from array using Key:
unset($arr["key2"]);
var_dump($arr);
// output: array(3) { ["key1"]=> string(6) "value1" ["key3"]=> string(6) "value3" ["key4"]=> string(6) "value4" }
Để xóa phần tử bằng cách value
:
// remove an element by value:
$arr = array_diff($arr, ["value1"]);
var_dump($arr);
// output: array(2) { ["key3"]=> string(6) "value3" ["key4"]=> string(6) "value4" }
đọc thêm về mảng_diff: http://php.net/manual/en/feft.array-diff.php
Để xóa phần tử bằng cách sử dụng index
:
array_splice($arr, 1, 1);
var_dump($arr);
// array(1) { ["key3"]=> string(6) "value3" }
đọc thêm về mảng_splice: http://php.net/manual/en/feft.array-splice.php