Các hàm xử lý mảng trong php là một trong những từ khóa được google search nhiều nhất về chủ đề các hàm xử lý mảng trong php. Trong bài viết này, hoclamweb.com.vn sẽ Tổng hợp các hàm xử lý mảng trong php mới nhất 2020.

Tổng hợp các hàm xử lý mảng trong php mới nhất 2020
1. định nghĩa
Một mảng là một cấu trúc dữ liệu mà lưu giữ một hoặc nhiều kiểu giá trị giống nhau trong một giá trị đơn. Nói dễ dàng thì mảng giống như các dòng xe ô tô, từng định dạng xe đưa từng giá trị riêng (value) và được đánh số bằng thứ tự đa dạng trên đối tượng (key).
Tham khảo: 18 checklist quan trọng trong SEO onpage 2019 giúp tăng thứ hạng website
2. Cú pháp
Để tạo mảng chúng ta sử dụng hàm array()
trong PHP (Từ PHP 5.4 trở lên bạn chỉ cần viết trị giá trong cặp dấu [ ] cũng được)
Những việc sử dụng hấp dẫn
-
100 phần mềm Engineers (PHP, Java, Python, .NET)VNPT-ITHo Chi Minh, Ha Noi, Da Nang, Others$800 – $1,500
PHPJavaPython.NET
-
PHP Developer (CakePHP, Zend, Laravel, CodeIgniter)Sun* Inc.Ho Chi Minh, Ha Noi, Da Nang$600 – $1,800
PHPCakePHPZendLaravelCodeIgniter
-
Senior PHP Developer (Laravel)Got ItHo Chi Minh$1,000 – $1,700
PHPLaravel
1
2
3
4
5
6
7
8
|
array(
key => value,
key2 => value2,
key3 => value3,
…
)
|
Ví dụ:
1
2
3
4
5
6
|
$cars=array(“Volvo”,”BMW”,”Toyota”);
var_dump( $cars );
?>
|
hiệu quả bạn có như sau:
1
2
3
4
5
6
7
|
array(3)
[0]=> string(5) “Volvo”
[1]=> string(3) “BMW”
[2]=> string(6) “Toyota”
|
như gợi ý trên chúng ta có mảng 3 trị giá. Trong đó nó có 3 key đánh số từ [0] đến [2] cho 3 trị giá (dòng xe) tương ứng. Mỗi giá trị bên trong nó sẽ hiển thị kèm theo tên kiểu dữ liệu. như vậy bạn đủ sức hiểu, Volvo, BMW, Toyota là giá trị trong mảng $cars
mà ta dump
ra. Các key nó sẽ tự động gán khi khởi tạo mảng. Để lấy giá trị trong mảng như ý muốn của mình, chúng ta sẽ get ra bằng phương pháp viết tên biến kèm theo key cần quét giá trị như sau:
1
2
3
4
5
|
echo $cars[2];
?>
|
3. Các loại mảng
3.1. Mảng số nguyên
Một mảng có chỉ mục ở dạng số. trị giá được lưu trữ và truy cập tuyến tính. VD:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
$numbers = array( 1, 2, 3, 4, 5);
foreach( $numbers as $value )
echo “Giá trị phần tử mảng là $value”;
/* phương pháp thứ hai để tạo mảng trong PHP. */
$numbers[0] = “Volvo”;
$numbers[1] = “BMW”;
$numbers[2] = “Toyota”;
$numbers[3] = “Mazda”;
$numbers[4] = “Kia”;
foreach( $numbers as $value )
echo “Giá trị phần tử mảng là $value”;
?>
|
KQ:
1
2
3
4
5
6
7
8
9
10
11
12
|
Giátrịphầntửmảnglà1
Giátrịphầntửmảnglà2
Giátrịphầntửmảnglà3
Giátrịphầntửmảnglà4
Giátrịphầntửmảnglà5
Giá trị phần tử mảng là Volvo
Giá trị phần tử mảng là BMW
Giá trị phần tử mảng là Toyota
Giá trị phần tử mảng là Mazda
Giá trị phần tử mảng là Kia
|
3.2. Mảng liên hợp

Một mảng với chỉ mục ở dạng chuỗi kí tự. Mảng này lưu trữ các giá trị phần tử bằng sự phối hợp với các giá trị key thay vì trong một trật tự chỉ mục tuyến tính nghiêm ngặt giống như mảng số nguyên. Các mảng liên hợp là khá giống với các mảng số nguyên về tính năng, nhưng chúng khác nhau về chỉ mục. Mảng liên hợp sẽ có chỉ mục ở dạng chuỗi để mà bạn đủ nội lực xây dựng một link mạnh giữa key
và value
.
VD:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
/* phương thức thứ nhất để tạo mảng liên hợp. */
$dong_xe = array(“volvo” => 3, “bmw” => 2, “toyota” => 1);
echo “Mức độ thông dụng của Volvo là “. $dong_xe[‘volvo’]. “”;
echo “Mức độ phổ biến của BMW là “. $dong_xe[‘bmw’]. “”;
echo “Mức độ thông dụng của Toyota là “. $dong_xe[‘toyota’]. “”;
/* bí quyết thứ hai để tạo mảng liên hợp. */
$dong_xe[‘volvo’] = “low”;
$dong_xe[‘bmw’] = “medium”;
$dong_xe[‘toyota’] = “high”;
echo “Mức độ phổ biến của Volvo là “. $dong_xe[‘volvo’] . “”;
echo “Mức độ thông dụng của BMW là “. $dong_xe[‘bmw’]. “”;
echo “Mức độ phổ biến của Toyota là “. $dong_xe[‘toyota’]. “”;
?>
|
Kq:
1
2
3
4
5
6
7
8
|
Mức độ phổ biến của Volvo là 3
Mức độ phổ biến của BMW là 2
Mức độ phổ biến của Toyota là 1
Mức độ phổ biến của Volvo là low
Mức độ phổ biến của BMW là medium
Mức độ phổ biến của Toyota là high
|
3.3. Mảng đa chiều
Một mảng chứa một hoặc nhiều mảng và các trị giá được truy cập bằng cách sử dụng nhiều chỉ mục có nghĩa là mỗi phần tử cũng đủ sức là một mảng. Và mỗi phần tử trong một mảng phụ đủ nội lực là một mảng, và cứ tiếp tục như vậy. Các giá trị trong mảng đa dạng được truy cập bởi dùng nhiều chỉ mục. VD:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
$diemdanhgia=array(
“volvo” => array
(
“mausac” => 7,
“kieudang”=>8,
“tocdo” => 9
),
“bmw” => array
(
“mausac” => 7,
“kieudang” => 9,
“tocdo” => 6
),
“toyota” => array
(
“mausac” => 8,
“kieudang” => 8,
“tocdo” => 9
)
);
/* truy cập các trị giá của mảng đa chiều */
echo “Điểm đánh giá màu sắc của Volvo là: ” ;
echo$diemdanhgia[‘volvo’][‘mausac’].””;
echo “Điểm đánh giá kiểu dáng của BMW là: “;
echo$diemdanhgia[‘bmw’][‘kieudang’].””;
echo “Điểm nghiên cứu tốc độ của Toyotalà: ” ;
echo $diemdanhgia[‘toyota’][‘tocdo’] . “”;
?>
|
KQ:
1
2
3
4
5
|
Điểm đánh giá màu sắc của Volvo là: 7
Điểm đánh giá kiểu dáng của BMW là: 9
Điểm đánh giá tốc độ của Toyotalà: 9
|
4. Phép lặp trong mảng
4.1. Phép lặp mảng tuần tự:
Cú pháp:
1
2
3
4
|
foreach($array as $temp)
HànhĐộng
|
Trong đó $array
là mảng mà ta muốn thực thi việc lặp dữ liệu, và $temp
là một biến trong đó ta sẽ tạm thời lưu trữ mỗi phần tử. Ví dụ:
1
2
3
4
5
6
7
8
|
$cars= array(“Volvo”, “BMW”, “Toyota”);
foreach($carsas$car)
echo”$car”;
?>
|
4.2. Lặp lại qua một mảng kết hợp:
Cú pháp:
1
2
3
4
|
foreach($array as $key=>$value)
HànhĐộng
|
Trong đó $array
là mảng mà ta muốn thực thi việc lặp dữ liệu, $key
là một biến vốn tạm thời chứa mỗi khóa, và $value
là một biến vốn tạm thời chữa mỗi giá trị. Ví dụ:
1
2
3
4
5
6
7
8
9
10
11
|
$car=array(“ten”=>”Volvo”,
“tocdo”=>”230”,
“kieudang”=>”co_dien”,
“mausac” =>”nau_xam”);
foreach($car as $key=>$val)
echo “Key: $key. Gia Tri: $val”;
?>
|
5. Các hàm xử lý mảng trong PHP
Hàm | giới thiệu | PHP |
---|---|---|
array() |
Tạo một mảng | 3 |
array_change_key_case() |
Trả về một mảng với all key trong dạng chữ hoa hoặc chữ thường | 4 |
array_chunk() |
Chia một mảng thành một mảng các mảng | 4 |
array_combine() |
Tạo một mảng bởi sử dụng một mảng cho key và mảng khác cho value | 5 |
array_count_values() |
Trả về một mảng với số lần xuất hiện mỗi value | 4 |
array_diff() |
So sánh các value của mảng, và trả về các sự không giống nhau | 4 |
array_diff_assoc() |
So sánh key và value của mảng, và trả về sự khác nhau | 4 |
array_diff_key() |
So sánh các key của mảng, và trả về các sự không giống nhau | 5 |
array_diff_uassoc() |
So sánh key và value của mảng, với một hàm rà soát bổ sung do user tạo, và trả về các sự không giống nhau | 5 |
array_diff_ukey() |
So sánh key của mảng, với một hàm check bổ sung do người dùng tạo, và trả về các sự khác nhau | 5 |
array_fill() |
Điền value vào một mảng | 4 |
array_fill_keys() |
Điền value vào một mảng, chỉ rõ các key | 5 |
array_filter() |
Lọc các phần tử của một mảng bởi dùng một hàm do người dùng tạo | 4 |
array_flip() |
trao đổi tất cả key với value được liên hợp với chúng trong một mảng | 4 |
array_intersect() |
So sánh các value trong mảng và trả về các so khớp | 4 |
array_intersect_assoc() |
So sánh các key và value trong mảng và trả về các so khớp | 4 |
array_intersect_key() |
So sánh các key trong mảng và trả về các so khớp | 5 |
array_intersect_uassoc() |
So sánh các key và value trong mảng, với một hàm test bổ sung do người dùng tạo và trả về các so khớp | 5 |
array_intersect_ukey() |
So sánh các key trong mảng, với một hàm rà soát bổ sung do user tạo và trả về các so khớp | 5 |
array_key_exists() |
rà soát xem key đã cho có tồn tại trong mảng không | 4 |
array_keys() |
Trả về tất cả key của một mảng | 4 |
array_map() |
gửi mỗi value của một mảng tới một hàm do user tạo, mà trả về các value mới | 4 |
array_merge() |
Sáp nhập một hoặc nhiều mảng thành một mảng | 4 |
array_merge_recursive() |
Sáp nhập một hoặc nhiều mảng thành một mảng | 4 |
array_multisort() |
bố trí các mảng đa chiều | 4 |
array_pad() |
Chèn số lượng item đang định hình với một value đã dựng lại vào một mảng | 4 |
array_pop() |
Xóa phần tử cuối cùng của một mảng | 4 |
array_product() |
Tính toán tích các value trong một mảng | 5 |
array_push() |
Chèn một hoặc nhiều phần tử vào phần cuối của một mảng | 4 |
array_rand() |
Trả về một hoặc nhiều key ngẫu nhiên từ một mảng | 4 |
array_reduce() |
Trả về một mảng ở dạng string, dùng hàm do user tạo | 4 |
array_reverse() |
Trả về một mảng với thứ tự bị đảo ngược | 4 |
array_search() |
kiếm tìm một mảng cho một value vừa mới cho và trả về key | 4 |
array_shift() |
Gỡ bỏ phần tử trước tiên từ một mảng, và trả về value của phần tử bị gỡ bỏ | 4 |
array_slice() |
Trả về các phần đang lựa chọn của một mảng | 4 |
array_splice() |
Gỡ bỏ và thay thế các phần tử đã dựng lại của một mảng | 4 |
array_sum() |
Trả về tổng các value trong một mảng | 4 |
array_udiff() |
So sánh các value của mảng trong một hàm do user tạo và trả về một mảng | 5 |
array_udiff_assoc() |
So sánh các key của mảng, và so sánh các value của mảng trong một hàm do user tạo, và trả về một mảng | 5 |
array_udiff_uassoc() |
So sánh các key và value của mảng trong một hàm do user tạo, và trả về một mảng | 5 |
array_uintersect() |
So sánh các value của mảng trong một hàm do user tạo, và trả về một mảng | 5 |
array_uintersect_assoc() |
So sánh các key của mảng, và so sánh các value của mảng trong một hàm do người dùng tạo, và trả về một mảng | 5 |
array_uintersect_uassoc() |
So sánh các value của mảng trong một hàm do người dùng tạo, và trả về một mảng | 5 |
array_unique() |
Gỡ bỏ bản sao các value từ một mảng | 4 |
array_unshift() |
Thêm một hoặc nhiều phần tử tới phần đầu của mảng | 4 |
array_values() |
Trả về toàn bộ value của một mảng | 4 |
array_walk() |
áp dụng một hàm do user tạo tới mỗi thành viên của một mảng | 3 |
array_walk_recursive() |
vận dụng một hàm một hướng dẫn đệ qui do người dùng tạo tới mỗi member của một mảng | 5 |
arsort() |
sắp xếp một mảng với thứ tự đảo ngược và duy trì link chỉ mục | 3 |
asort() |
sắp xếp một mảng và duy trì link chỉ mục | 3 |
compact() |
Tạo một mảng chứa các biến và các value của chúng | 4 |
count() |
Đếm các phần tử trong một mảng, hoặc các thuộc tính trong một thị trường | 3 |
current() |
Trả về phần tử hiện giờ trong một mảng | 3 |
each() |
Trả về cặp key và value bây giờ từ một mảng | 3 |
end() |
thiết lập con trỏ nội bộ của một mảng tới phần tử cuối cùng của nó | 3 |
extract() |
Nhập các biến vào trong bảng biểu tượng ngày nay từ một mảng | 3 |
in_array() |
check nếu một value vừa mới xác định là tồn tại trong một mảng | 4 |
key() |
lấy một key từ một mảng | 3 |
krsort() |
sắp đặt một mảng bằng các key theo thứ tự đảo ngược | 3 |
ksort() |
bố trí một mảng bằng các key | 3 |
list() |
Gán các biến như nếu chúng là một mảng | 3 |
natcasesort() |
sắp đặt một mảng bởi dùng một thuật toán “natural order” k phân biệt kiểu chữ | 4 |
natsort() |
sắp đặt một mảng bởi sử dụng một thuật toán “natural order” | 4 |
next() |
tăng con trỏ mảng nội bộ hay trỏ tới phần tử kế tiếp của một mảng | 3 |
pos() |
Alias của hàm current() | 3 |
prev() |
Giảm con trỏ mảng nội bộ hay trỏ tới phần tử ở trước của một mảng | 3 |
range() |
Tạo một mảng chứa một phạm vi phần tử | 3 |
reset() |
thiết lập con trỏ nội bộ của mảng về phần tử trước tiên của nó | 3 |
rsort() |
sắp xếp một mảng theo thứ tự đảo ngược | 3 |
shuffle() |
xáo trộn một mảng | 3 |
sizeof() |
Alias của hàm count() | 3 |
sort() |
bố trí một mảng | 3 |
uasort() |
sắp đặt một mảng với một hàm do user tạo và duy trì link chỉ mục | 3 |
uksort() |
bố trí một mảng bằng các key bởi sử dụng một hàm do user tạo | 3 |
usort() |
sắp đặt một mảng bằng các value bởi sử dụng một hàm do người dùng tạo |
Nguồn: https://techtalk.vn/