Xóa giá trị khóa trong mảng PHP

Để xóa phần tử hoặc giá trị đầu tiên khỏi một mảng, hàm array_shift() được sử dụng. Hàm này cũng trả về phần tử bị loại bỏ của mảng và trả về NULL nếu mảng trống. Sau khi loại bỏ phần tử đầu tiên, khóa của các phần tử khác được sửa đổi và một lần nữa mảng được đánh số từ đầu, chỉ khi các khóa là số

Nó là một hàm mảng sẵn có của PHP, nó dịch chuyển một phần tử từ đầu mảng

Giá trị trả về

Hàm array_shift(), được sử dụng để xóa phần tử đầu tiên khỏi một mảng, trả về phần tử đã xóa. Nó cũng trả về NULL, nếu mảng trống

Ví dụ. Sử dụng các phần tử chuỗi

đầu ra

Một phần tử "Xanh lam" bị xóa khỏi vị trí đầu tiên trong mảng đã cho và danh sách cập nhật được hiển thị trong đầu ra đã cho

Arraylist: Array ( [0] => Blue [1] => Red [2] => Black [3] => Green [4] => Gray [5] => White ) 
Removed element from array is: Blue
Updated arraylist: Array ( [0] => Red [1] => Black [2] => Green [3] => Gray [4] => White )

Thí dụ. Sử dụng các phím số

đầu ra

Removed element: Carom
Array ( [0] => Chess [1] => Ludo )

Thí dụ. Sử dụng các giá trị số

đầu ra

Một phần tử25 bị xóa khỏi vị trí đầu tiên trong mảng đã cho và danh sách cập nhật được hiển thị bên dưới

Trong bài đăng nhỏ này, tôi muốn chỉ cho bạn cách xóa khóa và giữ giá trị trong mảng php về cơ bản cách lập chỉ mục lại mảng bắt đầu từ chỉ mục 0 trong php. chúng ta có thể thực hiện bằng cách sử dụng hàm array_values ​​của mảng php

array_values() sẽ tạo lại mảng với các khóa mới nên về cơ bản, hàm array_values ​​sẽ tạo mảng mới với khóa mới như mặc định 0 1 2, v.v. nếu bạn muốn xóa các khóa và giữ các giá trị bằng mảng mới thì trong php

Xem ví dụ đơn giản dưới đây với đầu ra như vậy, nó sẽ giúp bạn làm tốt hơn

Thí dụ

$myArray = [

'paresh' => 'Paresh',

'hardik' => 'Hardik',

'vimal' => 'Vimal',

'harshad' => 'Harshad'

];

$reCreateArray = array_values($myArray);

print_r($reCreateArray);

đầu ra

Array

(

[0] => Paresh

[1] => Hardik

[2] => Vimal

[3] => Harshad

)

Tôi hy vọng nó có thể giúp bạn

Bài viết này khám phá các tùy chọn khác nhau để xóa một phần tử khỏi một mảng. PHP có nhiều hàm hữu ích trong việc xóa phần tử khỏi mảng. Vì chúng tôi có nhiều tùy chọn để khám phá nên hãy chuyển thẳng đến những tùy chọn này mà không lãng phí thời gian

 Andrei
    [1] => Susi
    [2] => Ron
    [3] => Brian
    [4] => Arthur
    [5] => Bob
)
*/
?>

Xóa một khóa phần tử khỏi một mảng PHP với unset

Hàm unset PHP hủy một biến đã chỉ định hoặc một phần tử mảng.  

Removed element: Carom
Array ( [0] => Chess [1] => Ludo )
5

Hàm nhận một hoặc nhiều đối số và hủy tất cả chúng cùng một lúc. Vì vậy, chức năng này là siêu tiện dụng. Ví dụ sau đây chứng minh rằng

 Andrei
    [2] => Susi
    [3] => Ron
    [4] => Brian
    [5] => Arthur
    [6] => Bob
)
*/
?>

Hàm unset xóa phần tử đầu tiên 'Micheal'. Tuy nhiên, nó không lập chỉ mục lại mảng. Thật không may, không có cách nào mà chức năng này có thể thực hiện lập chỉ mục lại mặc dù có một cách giải quyết khác là chi phí cho một lệnh gọi hàm bổ sung – array_values

 Andrei
    [1] => Susi
    [2] => Ron
    [3] => Brian
    [4] => Arthur
    [5] => Bob
)
*/
?>

Hơn nữa, khóa được mã hóa cứng cho giá trị 'Micheal'. Có một lối thoát cho điều đó như ví dụ sau đây cho thấy

 Micheal
    [1] => Andrei
    [3] => Susi
    [6] => Brian
    [7] => Arthur
    [8] => Bob
)
*/
 
?>

Tên 'Ron' được lặp lại một vài lần nhưng ví dụ này sử dụng mảng_keys với đối số tìm kiếm. Hàm với đối số tìm kiếm trả về một mảng các khóa có giá trị 'Ron'

Vì vậy, hàm unset có loại bỏ các phần tử mảng nhưng nó vẫn chưa phải là giải pháp tốt nhất. May mắn thay, có một chức năng giúp chúng ta tránh được mọi rắc rối. Vì vậy, hãy xem điều đó tiếp theo

Xóa phần tử khỏi mảng bằng array_diff

PHP array_diff tính toán sự khác biệt của các mảng. Ví dụ ở đây sẽ làm cho nó rõ ràng.  

Removed element: Carom
Array ( [0] => Chess [1] => Ludo )
6

Hàm tính chênh lệch của
 Andrei
    [2] => Susi
    [3] => Ron
    [4] => Brian
    [5] => Arthur
    [6] => Bob
)
*/
?>
0 với phần còn lại của
 Andrei
    [2] => Susi
    [3] => Ron
    [4] => Brian
    [5] => Arthur
    [6] => Bob
)
*/
?>
1. Nó hoạt động giống như phép toán sai phân từ lý thuyết tập hợp trong toán học – thứ ở trường trung học, nhớ chứ?

Xóa giá trị khóa trong mảng PHP

Vì vậy, hãy xem cách array_diff giúp xóa một phần tử khỏi mảng

Removed element: Carom
Array ( [0] => Chess [1] => Ludo )
0

thì đấy. Chức năng này thực hiện tất cả các công việc nặng nhọc. Chúng tôi không cần bất kỳ vòng lặp rõ ràng nào để xóa các phần tử trùng lặp cũng như không có lệnh gọi hàm bổ sung để lập chỉ mục lại mảng

Xóa phần tử khỏi mảng bằng array_diff_key

Bây giờ chúng ta đã tìm hiểu về array_diff, đây cũng là thời điểm thích hợp để xem array_diff_key. Array_diff_key thực hiện chức năng tương tự như array_diff ngoại trừ việc nó khớp với các khóa chứ không phải giá trị

Hãy xem lại ví dụ trước nhưng đảo ngược các cặp khóa và giá trị trong mảng

Removed element: Carom
Array ( [0] => Chess [1] => Ludo )
1

Vậy hàm xóa giá trị bằng phím “Ron”. Chìa khóa quan trọng ở đây, không phải giá trị

Xóa phần tử khỏi mảng bằng array_diff_assoc

Array_diif_assoc trong PHP là một hàm tương tự khác với điểm khác biệt là nó khớp với cả hai – khóa và giá trị.  

Hãy xem một ví dụ với array_diff_assoc để thấy sự khác biệt

Removed element: Carom
Array ( [0] => Chess [1] => Ludo )
2

Vậy là hàm xóa giá trị ‘Micheal’ bằng phím 0 và giữ lại giá trị ‘Micheal’ bằng phím 4. Đó là bởi vì đối số thứ hai nhận được một mảng bao gồm 'Micheal' với khóa 1. Vì vậy, khớp xảy ra như, 'xóa giá trị Micheal tại khóa 0'

Họ array_diff có một hàm khác array_diff_uassoc nhưng chúng tôi sẽ không đề cập đến nó vì chúng tôi đã đi chệch hướng một chút so với khóa học chính

Xóa phần tử khỏi mảng bằng array_splice

Array_splice trong PHP là một hàm khác giúp xóa một phần tử khỏi một mảng và tùy ý thay thế nó bằng một số phần tử khác.  

 Andrei
    [2] => Susi
    [3] => Ron
    [4] => Brian
    [5] => Arthur
    [6] => Bob
)
*/
?>
2

Đối số offset và độ dài là tất cả những gì chúng ta cần biết để xóa vì chúng ta không có ý định thay thế nó. Tuy nhiên, hiểu chức năng tổng thể có thể là một rắc rối cho người mới bắt đầu.  

FuelingPHP có một bài viết chuyên sâu về PHP array_splice. Nó bao gồm các giải thích và hình ảnh rõ ràng để giúp hiểu chức năng dựa trên các kết hợp khác nhau của giá trị độ lệch và độ dài

Ví dụ sau sử dụng hàm này để xóa một phần tử khỏi mảng.  

Removed element: Carom
Array ( [0] => Chess [1] => Ludo )
4

Hoàn hảo. Nó xóa phần tử 'Andrei' khỏi mảng. Lưu ý rằng nó cũng lập chỉ mục lại mảng

Phần kết luận

Đó là khá nhiều tất cả về bài viết này. Bài viết bao gồm nhiều tùy chọn để xóa một phần tử khỏi mảng. Hàm unset hoạt động tốt nhưng không thể lập chỉ mục lại mảng. Hàm array_diff cực kỳ hữu ích vì nó lập chỉ mục lại mảng và cũng xóa các giá trị trùng lặp.  

Bài viết cũng bao gồm các ví dụ về nhiều hàm tương tự như array_diff – array_diff_key và array_diff_assoc. Cuối cùng, chúng ta có hàm array_splice cần giá trị offset và độ dài để xóa một phần tử hoặc một phần của mảng.

Hy vọng bài viết này hữu ích với bạn. Nếu bạn muốn xem thêm các bài viết và hướng dẫn về PHP, hãy theo dõi tại FuelingPHP.

Bạn muốn tìm hiểu thêm về PHP?

Chúng tôi có nhiều bài viết thú vị liên quan đến PHP. Bạn có thể khám phá những điều này để tìm hiểu thêm về PHP

  • Cách đọc và ghi tệp CSV trong PHP
  • Giới thiệu về Symfony Doctrine PHP ArrayCollection
  • Cách thêm tiêu đề vào tệp với fputcsv

Bài viết liên quan

Xóa giá trị khóa trong mảng PHP
Cách thêm giá trị vào một mảng trên một chỉ mục cụ thể
Xóa giá trị khóa trong mảng PHP
Xóa Phần tử khỏi Mảng PHP kết hợp & đa chiều
Xóa giá trị khóa trong mảng PHP
Mảng đối tượng trong PHP. Tạo, Sắp xếp, Lọc, Hợp nhất, Tìm kiếm, v.v
Xóa giá trị khóa trong mảng PHP
Mảng kết hợp hoặc bản đồ băm trong PHP là gì


  • ← Cách sắp xếp mảng đối tượng theo thuộc tính trong PHP
  • Cách cập nhật khóa cụ thể trong mảng đa chiều trong PHP →

Viết mã tốt hơn nhanh hơn

Nhấp vào đây để nhận các bí mật hàng đầu 'Trở thành Rockstar PHP Dev trong 7 ngày' của chúng tôi được gửi đến hộp thư đến của bạn

đăng ký

Xóa giá trị khóa trong mảng PHP

Stephen Phép Lạ

Chào. Tôi hy vọng bạn thích bài viết này. Tôi đã phát triển các trang web và phần mềm một cách chuyên nghiệp trong hơn 20 năm. Tôi bắt đầu FuelingPHP như một cách để đền đáp lại cộng đồng nguồn mở đã giúp tôi có thể sống thoải mái khi xây dựng những thứ tôi yêu thích

Làm cách nào để xóa cặp giá trị khóa khỏi mảng trong PHP?

Sử dụng hàm unset() . Hàm unset() dùng để xóa phần tử khỏi mảng. Hàm unset được sử dụng để hủy bất kỳ biến nào khác và sử dụng tương tự để xóa bất kỳ phần tử nào của một mảng. Lệnh bỏ đặt này lấy khóa mảng làm đầu vào và xóa phần tử đó khỏi mảng.

Làm cách nào để xóa một giá trị cụ thể khỏi một mảng trong PHP?

Trả lời. Sử dụng Hàm unset() của PHP .

Làm cách nào để xóa khóa cuối cùng khỏi mảng trong PHP?

Hàm array_pop() xóa phần tử cuối cùng của một mảng.

Làm cách nào để xóa cặp giá trị khóa cụ thể khỏi mảng đối tượng?

Toán tử xóa được sử dụng để xóa cặp khóa-giá trị trong đó khóa là “key2”. bảng điều khiển. nhật ký (đối tượng); . { key1. "giá trị1", phím3. "giá trị3" }.