Php xóa các khóa mảng có giá trị trống

Bạn có thể sử dụng hàm PHP array_filter[] xóa các phần tử hoặc giá trị mảng trống khỏi một mảng trong PHP. Thao tác này cũng sẽ xóa các giá trị trống, null, false, 0 [không]

hàm array_filter[]

Hàm array_filter[] lọc các phần tử hoặc giá trị của một mảng bằng hàm gọi lại. nếu không có lệnh gọi lại nào được cung cấp, tất cả các mục của mảng bằng FALSE sẽ bị xóa

Loại bỏ các phần tử mảng trống trong PHP

Ví dụ #1 array_filter[] ví dụ

đầu ra

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
Ví dụ #2 array_filter[] với các phần tử mảng reindex

chúng ta có thể xóa giá trị trống và sau đó giới thiệu lại các phần tử mảng. Đối với nó, chúng ta sẽ sử dụng hàm array_values[] và array_filter[] cùng nhau

đầu ra

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]

Hàm array_values[] trả về một mảng chứa tất cả các giá trị của một mảng. Mảng trả về sẽ có các phím số, bắt đầu từ 0 và tăng lên 1

Một mảng được xác định, chứa các chuỗi, số và giá trị 'null'. Vòng lặp 'foreach' được sử dụng để lặp lại các phần tử và nếu một giá trị trống, tôi. e. nó chứa null thì nó bị xóa khỏi mảng. Mảng có liên quan được hiển thị lại không chứa giá trị null

mảng php xóa trống Sử dụng hàm PHP array_filter[]. Hàm unset[] loại bỏ giá trị được lưu trữ trong một biến

xóa mảng php trống

nội dung

  • xóa mảng php trống
    • xóa mục khỏi mảng php
    • xóa ký tự khỏi chuỗi
    • php xóa ký tự đầu tiên
    • php xóa phần tử mảng bằng khóa
    • Bài viết liên quan

Chúng ta có thể sử dụng nó để loại bỏ các phần tử trống khỏi một mảng. Bạn có thể sử dụng hàm PHP array_filter[] xóa các phần tử hoặc giá trị mảng trống khỏi một mảng trong PHP

Để xóa các giá trị trống khỏi mảng PHP của bạn, bạn cần gọi hàm

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
2 mà không chuyển hàm gọi lại

Khi không có chức năng gọi lại nào được cung cấp,

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
2 sẽ xóa mọi phần tử trống

PHP coi các giá trị sau là trống

  • Array
    [
        [0] => PHP
        [1] => HTML
        [2] => CSS
        [3] => JavaScript
    ]
    
    4
  • Array
    [
        [0] => PHP
        [1] => HTML
        [2] => CSS
        [3] => JavaScript
    ]
    
    5
  • Array
    [
        [0] => Nathan
        [2] => 29
        [5] => 1
        [7] => Jane
    ]
    
    0
  • Array
    [
        [0] => Nathan
        [2] => 29
        [5] => 1
        [7] => Jane
    ]
    
    1
  • Array
    [
        [0] => Nathan
        [2] => 29
        [5] => 1
        [7] => Jane
    ]
    
    2
  • Array
    [
        [0] => Nathan
        [2] => 29
        [5] => 1
        [7] => Jane
    ]
    
    3
  • Array
    [
        [0] => Nathan
        [2] => 29
        [5] => 1
        [7] => Jane
    ]
    
    4
  • Array
    [
        [0] => Nathan
        [2] => 29
        [5] => 1
        [7] => Jane
    ]
    
    5

Hãy xem một ví dụ về việc loại bỏ các giá trị trống trong một mảng

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
0

Đầu ra của đoạn mã trên sẽ là

Array
[
    [0] => Nathan
    [2] => 29
    [5] => 1
    [7] => Jane
]

Nếu bạn muốn bao gồm các giá trị như

Array
[
    [0] => Nathan
    [2] => 29
    [5] => 1
    [7] => Jane
]
6 và
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
4 trong mảng của mình, thì bạn cần chuyển một hàm gọi lại cho
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
2 như hình bên dưới

Nhiều lần, khi làm việc trên một dự án PHP, bạn xử lý một mảng có một số phần tử mảng trống hoặc không mong muốn. Điều này đặc biệt đúng nếu bạn không có quyền kiểm soát đối với các giá trị được đưa vào mảng. Ví dụ: bạn có thể phải lưu trữ đầu vào của người dùng vào một mảng và một số đầu vào đó có thể chứa các chuỗi trống không mong muốn. Trong hướng dẫn này, bạn sẽ tìm hiểu về các phương thức khác nhau có thể được sử dụng để loại bỏ các phần tử trống khỏi một mảng. Chúng ta cũng sẽ tìm hiểu cách xóa các phần tử khác có giá trị cụ thể

Trên trang này

  1. Xóa tất cả các phần tử mảng được đánh giá là sai bằng cách sử dụng array_filter[]
  2. Xóa các phần tử mảng trống bằng cách sử dụng array_filter[]
  3. Loại bỏ các phần tử mảng trống bằng cách lặp qua mảng
  4. Tóm tắt nhanh

Xóa tất cả các phần tử mảng được đánh giá là sai bằng cách sử dụng array_filter[]

Hàm array_filter[] được sử dụng để lọc các phần tử của mảng bằng hàm gọi lại. Tuy nhiên, chức năng gọi lại này là tùy chọn. Nếu bạn muốn xóa tất cả các phần tử mảng có giá trị là false, việc cung cấp hàm gọi lại là hoàn toàn không cần thiết

Không có chức năng gọi lại,

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
2 Sẽ xóa tất cả các phần tử như chuỗi rỗng
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
9, Boolean false, null và zero, v.v. Về cơ bản, bất kỳ phần tử mảng nào có giá trị là false sẽ bị xóa

PHP

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
3

Trong ví dụ trên, ________ 32 xóa tất cả các phần tử mảng có giá trị sai. Điều này bao gồm

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
9,
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
4,
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
40,
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
41 và
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
42. Một điều mà bạn có thể nhận thấy là các khóa của mảng ban đầu tại sao không được lập chỉ mục lại sau khi loại bỏ các phần tử mảng trống. Nếu bạn muốn lập chỉ mục lại các khóa, bạn cần bọc kết quả của
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
2 trong hàm
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
44

PHP

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
4

Xóa các phần tử mảng trống bằng cách sử dụng array_filter[]

Tùy thuộc vào nhu cầu của dự án hiện tại, giá trị sai Boolean có thể hoặc không được coi là trống. Tương tự, giá trị 0 cũng có thể không được coi là trống. Nếu tất cả những gì bạn muốn làm là xóa các chuỗi trống khỏi một mảng, bạn sẽ phải chuyển một hàm gọi lại tùy chỉnh tới

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
2. Một phần tử sẽ bị xóa nếu hàm gọi lại trả về false cho phần tử cụ thể đó. Đây là một ví dụ

PHP

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
9

Như bạn có thể thấy trong ví dụ trên, phần tử mảng duy nhất bị loại bỏ là chuỗi rỗng. Một lần nữa, các khóa của mảng cuối cùng có thể được lập chỉ mục lại bằng hàm

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
46

Một phương pháp khác để xóa chuỗi rỗng khỏi một mảng bao gồm chuyển hàm

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
47 dưới dạng hàm gọi lại cho hàm
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [3] => JavaScript
]
2. Điều quan trọng cần nhớ là điều này chỉ hoạt động như mong đợi nếu các phần tử mảng không có giá trị Boolean
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
40

Trong một số trường hợp, một phần tử mảng sẽ không phải là một chuỗi rỗng mà nó sẽ chỉ chứa các ký tự khoảng trắng để tạo thành một chuỗi rỗng một cách hiệu quả. Nếu bạn muốn xóa tất cả các phần tử chứa chuỗi rỗng hoặc chuỗi chỉ có các ký tự khoảng trắng, bạn cũng sẽ phải áp dụng

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
90 trên tất cả các phần tử trong hàm gọi lại

PHP

4

Loại bỏ các phần tử mảng trống bằng cách lặp qua mảng

Bạn cũng có thể lặp qua một mảng để loại bỏ tất cả các phần tử trống hoặc có một số giá trị cụ thể khác mà bạn muốn biến mất. Khi xem qua một mảng, điều quan trọng cần nhớ là bạn phải chèn giá trị của mảng ban đầu thay vì một biến cục bộ được tạo bởi vòng lặp

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
91. Ví dụ sau sẽ làm cho khái niệm này rõ ràng hơn

PHP

6

Trong trường hợp đầu tiên, vòng lặp

Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
91 bỏ đặt biến cục bộ có tên là
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
93. Đây là lý do các mảng ban đầu vẫn còn nguyên vẹn. Mặt khác, vòng lặp thứ hai sử dụng
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
94 để loại bỏ các phần tử mảng được chỉ ra bởi giá trị hiện tại của
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
95 trong mảng
Array
[
    [0] => PHP
    [1] => HTML
    [2] => CSS
    [4] => JavaScript
]
96

Tóm tắt nhanh

Hãy tóm tắt lại mọi thứ chúng tôi đã trình bày trong hướng dẫn này

  1. Bạn có thể chỉ cần sử dụng
    Array
    [
        [0] => PHP
        [1] => HTML
        [2] => CSS
        [3] => JavaScript
    ]
    
    2 để loại bỏ tất cả các phần tử mảng đánh giá là sai. Trong trường hợp này, bạn không cần truyền bất kỳ chức năng gọi lại nào
  2. Các dự án khác nhau có thể có các tiêu chí khác nhau để xác định những gì cấu thành một phần tử mảng trống. Trong những trường hợp như vậy, bạn có thể chuyển hàm gọi lại cho hàm
    Array
    [
        [0] => PHP
        [1] => HTML
        [2] => CSS
        [3] => JavaScript
    ]
    
    2 và loại bỏ các phần tử tương ứng
  3. Nếu bạn không muốn sử dụng hàm
    Array
    [
        [0] => PHP
        [1] => HTML
        [2] => CSS
        [3] => JavaScript
    ]
    
    2 vì lý do nào đó, bạn cũng có thể lặp qua mảng để loại bỏ mọi phần tử mảng trống

Hãy cho tôi biết nếu có bất cứ điều gì bạn muốn tôi làm rõ trong hướng dẫn này. Ngoài ra, rất hoan nghênh bạn bình luận nếu bạn biết các kỹ thuật khác để loại bỏ các phần tử mảng trống trong PHP

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

Một cách khác để loại bỏ các phần tử trống khỏi mảng là sử dụng hàm empty[] cùng với hàm unset[] . Hàm empty[] dùng để kiểm tra xem một phần tử có rỗng hay không.

Làm cách nào để xóa khóa mảng không xác định trong PHP?

Nó có thể hiển thị cảnh báo khóa mảng không xác định đối với một số. Điều đó có nghĩa giống như việc bạn đang cố truy cập vào một khóa mảng không xác định. Nó có thể được giải quyết tương tự như hai trường hợp trước bằng cách sử dụng hàm isset[], arrayexists[] hoặc empty[] .

Làm cách nào để xóa giá trị null trong PHP?

Một phương pháp thuận tiện để loại bỏ tất cả các giá trị null khỏi một mảng trong PHP là sử dụng hàm array_filter[] . Như tên cho thấy phương thức lọc một mảng nhất định, nếu bạn không cung cấp hàm lọc của riêng mình thì PHP sẽ lọc ra tất cả các giá trị đánh giá là sai trong một điều kiện; .

Làm cách nào để xóa NaN trong PHP?

Sử dụng array_filter để loại bỏ NaN bằng hàm is_nan . $array = [1, 3, 5, 3, float[NaN], 4, float[NaN]]; . is_nan[$element]; . Thao tác này cũng sẽ xóa các số được lưu dưới dạng chuỗi, ví dụ '21' sẽ bị xóa.

Chủ Đề