•
PHP - xóa phần tử khỏi mảng
Ruby hỗ trợ phương thức delete
dùng để xóa phần tử ra khỏi mảng:
a = [2,4,6,3,8]
a.delete(3)
PHP có hàm nào tương tự như vậy để xóa một phần tử ra khỏi mảng không vậy mọi người?
Ruby hỗ trợ phương thức delete
dùng để xóa phần tử ra khỏi mảng:
a = [2,4,6,3,8]
a.delete(3)
PHP có hàm nào tương tự như vậy để xóa một phần tử ra khỏi mảng không vậy mọi người?
đơn giản bạn có thể sử dụng unset()
Theo ví dụ của bạn:
$a = array(2, 4, 6, 3 , 8); // Mảng này tương đương với:
$a = array(0 => 2, 1 => 4, 2 => 6, 3 => 3, 4 => 8); // nếu bạn không đặt key cho mỗi giá trị
// Vậy muốn xóa giá trị nào ta chỉ cần gọi key của nó trong hàm unset. Ví dụ dưới đây tôi sẽ xóa giá trị 6 trong mảng của bạn.
unset($a[2]);
// Ví dụ về xóa nhiều giá trị, hoặc có điều kiện cụ thể. Chẳng hạn tôi sẽ xóa các giá trị chẵn trong mảng của bạn như sau:
foreach($a as $key => $num)
{
if($num % 2 = 0)
{
unset($a[$key])
}
}
Trong PHP bạn có thể sử dụng hàm array_splice()
để xóa phần tử khỏi mảng số (numeric array):
$myArr = array(0 => "a", 1 => "b", 2 => "c", 3 => "d");
// bắt đầu từ phần tử được đánh khóa là 1 và xóa hai phần tử từ đây
array_splice($myArr, 1, 2);
print_t($myArr);
Hiển thị:
Array
(
[0] => a
[1] => d
)
Em có thể sử dụng array_diff();
Ex:
a = [2,4,6,3,8]
b = array_diff(a, array('3'))
Bạn có thể dùng
unset()
hoặcarray_split()
.Bạn tham khảo thêm trả lời của mình trong câu hỏi này nhé!