Quảng cáo
Cách xóa phần tử mảng PHP theo giá trị không phải khóa
Chủ đề: PHP / MySQLBài trước|Bài tiếp
Trả lời: Sử dụng hàm array_search()
Trước tiên, bạn có thể sử dụng hàm array_search()
để tìm kiếm giá trị đã cho bên trong mảng và lấy khóa tương ứng của nó, sau đó xóa phần tử bằng cách sử dụng khóa đó với hàm unset()
.
Ghi chú: Xin lưu ý rằng, nếu giá trị được tìm thấy nhiều lần, thì chỉ khóa khớp đầu tiên mới được trả về.
Hãy xem một ví dụ để hiểu cách nó thực sự hoạt động:
Ví dụ
<?php
// Sample indexed array
$array1 = array(1, 2, 3, 4, 5);
// Search value and delete
if(($key = array_search(4, $array1)) !== false) {
unset($array1[$key]);
}
print_r($array1);
echo "<br>";
// Sample eassociative array
$array2 = array("a" => "Apple", "b" => "Ball", "c" => "Cat");
// Search value and delete
if(($key = array_search("Cat", $array2)) !== false) {
unset($array2[$key]);
}
print_r($array2);
?>
Câu hỏi liên quan
Dưới đây là một số câu hỏi thường gặp khác liên quan đến chủ đề này:
- Kết quả kiểu trả về JSON từ PHP Script
- Cách xóa ký tự cuối cùng khỏi chuỗi trong PHP
- Cách làm mới trang định kỳ bằng PHP
- Cách đẩy cả khóa và giá trị vào một mảng trong PHP
- Làm thế nào để chuyển đổi một số nguyên thành một chuỗi trong PHP
Advertisements