Hướng dẫn what does array filter do in php? - Bộ lọc mảng làm gì trong php?

(Php 4> = 4.0.6, Php 5, Php 7, Php 8)

Array_Filter - Lọc các thành phần của một mảng bằng hàm gọi lạiFilters elements of an array using a callback function

Sự mô tả

mảng_filter (mảng $array,? có thể gọi $callback = null, int $mode = 0): mảng(array $array, ?callable $callback = null, int $mode = 0): array

Các phím mảng được bảo tồn và có thể dẫn đến các khoảng trống nếu array được lập chỉ mục. Mảng kết quả có thể được tái phát bằng hàm mảng_Values ​​().array can be reindexed using the array_values() function.

Thông số

array

Mảng để lặp lại

callback

Chức năng gọi lại để sử dụng

Nếu không có callback được cung cấp, tất cả các mục trống của array sẽ bị xóa. Xem trống () để biết cách PHP định nghĩa trống trong trường hợp này.empty() for how PHP defines empty in this case.

Array
(
    [0] => foo
    [2] => -1
)
2

Cờ xác định những đối số nào được gửi đến callback:

  • Array
    (
        [0] => foo
        [2] => -1
    )
    
    4 - Pass Key làm đối số duy nhất cho callback thay vì giá trị
    - pass key as the only argument to callback instead of the value
  • Array
    (
        [0] => foo
        [2] => -1
    )
    
    6 - Chuyển cả giá trị và khóa làm đối số cho callback thay vì giá trị
    - pass both value and key as arguments to callback instead of the value
Mặc định là
Array
(
    [0] => foo
    [2] => -1
)
8 sẽ chuyển giá trị làm đối số duy nhất cho callback thay thế.

Trả về giá trị

Trả về mảng được lọc.

Thay đổi

Phiên bảnSự mô tả
8.0.0 mảng_filter (mảng $array,? có thể gọi $callback = null, int $mode = 0): mảng
8.0.0 Các phím mảng được bảo tồn và có thể dẫn đến các khoảng trống nếu array được lập chỉ mục. Mảng kết quả có thể được tái phát bằng hàm mảng_Values ​​().
array(1) {
  ["b"]=>
  int(2)
}
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}
2
.

Thông số

arrayarray_filter() example

array(1) {
  ["b"]=>
  int(2)
}
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}
3

array(1) {
  ["b"]=>
  int(2)
}
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}
4

array(1) {
  ["b"]=>
  int(2)
}
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}
5

Mảng để lặp lại

Odd :
Array
(
    [a] => 1
    [c] => 3
    [e] => 5
)
Even:
Array
(
    [0] => 6
    [2] => 8
    [4] => 10
    [6] => 12
)

callbackarray_filter() without callback

array(1) {
  ["b"]=>
  int(2)
}
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}
7

array(1) {
  ["b"]=>
  int(2)
}
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}
8

array(1) {
  ["b"]=>
  int(2)
}
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}
9

Mảng để lặp lại

Array
(
    [0] => foo
    [2] => -1
)

callbackarray_filter() with

Array
(
    [0] => foo
    [2] => -1
)
2

array(1) {
  ["b"]=>
  int(2)
}
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}
7

$array2

$array3

Mảng để lặp lại

array(1) {
  ["b"]=>
  int(2)
}
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}

callback

Chức năng gọi lại để sử dụng

Nếu không có callback được cung cấp, tất cả các mục trống của array sẽ bị xóa. Xem trống () để biết cách PHP định nghĩa trống trong trường hợp này.

Array ( [0] => foo [2] => -1 ) 2

  • Cờ xác định những đối số nào được gửi đến callback:
  • Array
    (
        [0] => foo
        [2] => -1
    )
    
    4 - Pass Key làm đối số duy nhất cho callback thay vì giá trị
  • Array
    (
        [0] => foo
        [2] => -1
    )
    
    6 - Chuyển cả giá trị và khóa làm đối số cho callback thay vì giá trị
  • Mặc định là
    Array
    (
        [0] => foo
        [2] => -1
    )
    
    8 sẽ chuyển giá trị làm đối số duy nhất cho callback thay thế.

Trả về giá trị

Trả về mảng được lọc.

$array4

Thay đổi

Phiên bản

$array5

$array6

$array7

$array8

$array9

$callback0

callback bây giờ là vô hiệu.

Nếu callback mong đợi một tham số được truyền qua tham chiếu, chức năng này bây giờ sẽ phát ra một

array(1) {
  ["b"]=>
  int(2)
}
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}
2.

$callback1

$callback2

$callback3

$callback4

$callback5

$callback0

Ví dụ

Ví dụ #1 Array_filter () ví dụ

$callback7

$callback8

$callback9

$callback0

Ví dụ trên sẽ xuất ra:

Ví dụ #2 mảng_filter () mà không có callback

null1

null2

null3

null4

null5

null6

null7

null8

null9

$mode0

$callback0

Ví dụ #3 mảng_filter () với

Array
(
    [0] => foo
    [2] => -1
)
2

Ghi chú

$mode2

$mode3

$callback0

Thận trọng

Nếu mảng được thay đổi từ chức năng gọi lại (ví dụ: phần tử được thêm, đã xóa hoặc giải phóng), hành vi của hàm này không được xác định.

$mode5

$mode6

$mode7

$mode8

$callback0

Xem thêm

Array_Intersect () - Tính toán giao điểm của mảng

array0

array1

array2

array3

array4

Mảng lọc làm gì?

Sử dụng mảng bộ lọc - Hành động hoạt động dữ liệu để giảm số lượng đối tượng trong một mảng vào một tập hợp con phù hợp với các tiêu chí bạn cung cấp.Bạn không thể sử dụng hành động mảng bộ lọc để thay đổi hình dạng của các đối tượng trong mảng.Văn bản mà bạn lọc nhạy cảm trường hợp.reduce the number of objects in an array to a subset that matches the criteria you provide. You can't use the filter array action to change the shape of objects in the array. The text on which you filter is case-sensitive.

Việc sử dụng hàm mảng () trong PHP là gì?

Các hàm mảng cho phép bạn truy cập và thao tác các mảng.Mảng đơn giản và đa chiều được hỗ trợ.allow you to access and manipulate arrays. Simple and multi-dimensional arrays are supported.

Làm thế nào để bạn lọc một phím mảng?

Lọc mảng PHP bằng các phím để sử dụng hàm php mảng_filter () để lọc các phần tử mảng bằng khóa thay vì giá trị, bạn có thể chuyển cờ mảng_filter_use_key làm đối số thứ ba cho hàm.Điều này sẽ chuyển khóa là đối số duy nhất cho chức năng gọi lại được cung cấp.pass the ARRAY_FILTER_USE_KEY flag as the third argument to the function. This would pass the key as the only argument to the provided callback function.

3 loại mảng PHP là gì?

Trong PHP, có ba loại mảng: mảng được lập chỉ mục - mảng có chỉ mục số.Mảng liên kết - Mảng với các khóa có tên.Mảng đa chiều - Mảng chứa một hoặc nhiều mảng.Indexed arrays - Arrays with a numeric index. Associative arrays - Arrays with named keys. Multidimensional arrays - Arrays containing one or more arrays.