[Php 4, Php 5, Php 7, Php 8]
Array_Walk - Áp dụng chức năng do người dùng cung cấp cho mọi thành viên của một mảng — Apply a user supplied function to every member of an array
Sự mô tả
Array_Walk [mảng | Đối tượng &$array
, có thể gọi $callback
, hỗn hợp $arg
= null
]: Bool[array|object &$array
,
callable $callback
, mixed $arg
= null
]: bool
Áp dụng hàm callback
do người dùng xác định cho từng phần tử của mảng array
.
Array_walk [] không bị ảnh hưởng bởi con trỏ mảng bên trong của array
. Array_walk [] sẽ đi qua toàn bộ mảng bất kể vị trí con trỏ.
is not affected by the internal array pointer of array
. array_walk[] will walk through the entire array regardless of pointer position.
Thông số
array
Mảng đầu vào.
callback
Thông thường, callback
có hai tham số. Giá trị của tham số array
là đầu tiên và khóa/chỉ mục thứ hai.
Ghi chú::
Nếu
callback
cần phải làm việc với các giá trị thực của mảng, hãy chỉ định tham số đầu tiên củacallback
làm tham chiếu. Sau đó, bất kỳ thay đổi nào được thực hiện cho các yếu tố đó sẽ được thực hiện trong chính mảng ban đầu.
Ghi chú::
Nếu
callback
cần phải làm việc với các giá trị thực của mảng, hãy chỉ định tham số đầu tiên củacallback
làm tham chiếu. Sau đó, bất kỳ thay đổi nào được thực hiện cho các yếu tố đó sẽ được thực hiện trong chính mảng ban đầu.strtolower[]] will throw a warning if more than the expected number of argument are passed in and are not usable directly as acallback
.
Nhiều chức năng nội bộ [ví dụ Strtolower []] sẽ đưa ra cảnh báo nếu nhiều hơn số lượng đối số dự kiến được truyền vào và không thể sử dụng trực tiếp như một callback
.
array
có thể có khả năng được thay đổi; Cấu trúc của nó không thể được thay đổi, tức là, lập trình viên không thể thêm, giải phóng hoặc sắp xếp lại các yếu tố. Nếu cuộc gọi lại không tôn trọng yêu cầu này, hành vi của chức năng này không được xác định và không thể đoán trước. &$array
6
Nếu tham số &$array
6 tùy chọn được cung cấp, nó sẽ được truyền dưới dạng tham số thứ ba cho callback
.
Trả về giá trị&$array
9.
Errors/Exceptions
Trả lại &$array
9.ArgumentCountError will be thrown if the callback
function requires more than 2 parameters [the value and key of the array member], or more than 3 parameters if the &$array
6 is also passed. Previously, in this case an error of level E_WARNING would be generated each time array_walk[]
calls callback
.
Kể từ Php 7.1.0, một đối số sẽ được ném nếu hàm callback
yêu cầu nhiều hơn 2 tham số [giá trị và khóa của thành viên mảng] hoặc hơn 3 tham số nếu &$array
6 cũng được truyền. Trước đây, trong trường hợp này, một lỗi của cấp E_Warning sẽ được tạo mỗi lần ARRAY_WALK [] gọi callback
.
8.0.0 | Phiên bản$callback 4.
|
Nếu callback
mong đợi tham số thứ hai hoặc thứ ba được truyền qua tham chiếu, chức năng này sẽ phát ra một $callback
4.
Ví dụarray_walk[] example
$callback
5
$callback
6
$callback
7Ví dụ #1 mảng_walk [] ví dụ
Before ...: d. lemon a. orange b. banana c. apple ... and after: d. fruit: lemon a. fruit: orange b. fruit: banana c. fruit: apple
Ví dụ trên sẽ xuất ra:array_walk[] example using anonymous function
$callback
8
Ví dụ #1 mảng_walk [] ví dụ
Ví dụ trên sẽ xuất ra:
- Ví dụ #2 Array_walk [] Ví dụ sử dụng hàm ẩn danh
- Xem thêm
- Array_Walk_Recursive [] - Áp dụng chức năng người dùng đệ quy cho mọi thành viên của một mảng
- iterator_apply [] - gọi hàm cho mọi phần tử trong trình lặp lại
- list [] - gán các biến như thể chúng là một mảng
- Mỗi [] - Trả về cặp khóa và giá trị hiện tại từ một mảng và tiến lên con trỏ mảng
- call_user_func_array [] - Gọi một cuộc gọi lại với một mảng các tham số
Array_Map [] - Áp dụng cuộc gọi lại cho các phần tử của các mảng đã cho ¶
cho mỗi
$callback
9
bisqwit tại iki dot fi ¶ ¶
18 năm trước
$arg
0
$arg
1
$arg
2
$arg
3ezhacher tại gmail dot com ¶
8 năm trước
$arg
4
$arg
5
$arg
6
$arg
7
$arg
8
$arg
9
null
001001coder tại gmail dot com ¶ ¶
4 năm trước
null
1
null
2
$arg
9
null
4Fred ¶ ¶
18 năm trước
null
5
null
6
$arg
3ezhacher tại gmail dot com ¶
8 năm trước
null
8
null
9
callback
0
callback
1
callback
2
$arg
301001coder tại gmail dot com ¶ ¶
4 năm trước
callback
4
callback
5
$arg
3Fred ¶ ¶
8 năm trước
callback
7
callback
8
callback
9
array
001001coder tại gmail dot com ¶ ¶
4 năm trước
array
1
array
2
$arg
9
array
4Fred ¶ ¶
6 năm trước
array
5
array
6
array
7
$arg
3Chaley tại Brtransport dot com ¶ ¶
taj tại yahoo dot fr ¶
array
9
3 năm trước ¶
4 năm trước
array
0
array
1
$arg
3Fred ¶ ¶
6 năm trước
array
3
array
4
array
5
array
6Chaley tại Brtransport dot com ¶ ¶
4 năm trước
array
7
array
8
array
9
array
0Fred ¶ ¶
6 năm trước
array
1
Chaley tại Brtransport dot com ¶ ¶
taj tại yahoo dot fr ¶
array
2
array
3
$arg
9
array
53 năm trước ¶
6 năm trước
array
6
array
7
array
5
array
9Chaley tại Brtransport dot com ¶ ¶
6 năm trước
callback
0
callback
1
$arg
9
callback
3Chaley tại Brtransport dot com ¶ ¶
4 năm trước
callback
4
callback
5
$arg
9
callback
7Fred ¶ ¶
4 năm trước
callback
8
callback
9
$arg
3Fred ¶ ¶
6 năm trước
&$array
01
&$array
02
&$array
03
$arg
3Chaley tại Brtransport dot com ¶ ¶
taj tại yahoo dot fr ¶
&$array
05
&$array
06
&$array
07
$arg
33 năm trước ¶
4 năm trước
&$array
09
&$array
10
$arg
3Fred ¶ ¶
6 năm trước
&$array
12
&$array
13
$arg
3Chaley tại Brtransport dot com ¶ ¶
taj tại yahoo dot fr ¶
&$array
15
&$array
16
&$array
17
&$array
18
&$array
19
&$array
20
&$array
21
&$array
22
Maxim ¶
11 năm trước
&$array
24
Christopher tại crmldnrs dot com ¶ ¶
5 tháng trước
&$array
25
&$array
26
$arg
3myStral77 tại gmail dot com ¶ ¶
2 năm trước
&$array
28
&$array
29
&$array
30
&$array
31
&$array
32Espertalhao04 tại hotmail dot com ¶
9 năm trước
&$array
33
&$array
34
&$array
35
&$array
36el_porno tại web dot de ¶ ¶
17 năm trước
&$array
37
&$array
38
&$array
39
&$array
40
$arg
3vàng [at] đã phát triển.net.nz ¶ ¶
9 năm trước
&$array
42
&$array
43
&$array
44
&$array
45
&$array
46
$arg
3el_porno tại web dot de ¶ ¶
17 năm trước
&$array
48
&$array
49
&$array
50
&$array
51vàng [at] đã phát triển.net.nz ¶ ¶
Jerk at yoosic dot de ¶
&$array
52
&$array
53
&$array
54
&$array
55
&$array
5615 năm trước ¶
17 năm trước
&$array
57
&$array
58
&$array
59
$arg
3vàng [at] đã phát triển.net.nz ¶ ¶
Jerk at yoosic dot de ¶
&$array
61
&$array
62
&$array
63
&$array
64