Khái niệm và những vấn đề liền quan về các loại mảng có trong PHP mình đã giới thiệu ở bài 10 : Mảng trong PHP. Tiếp tục series học PHP căn bản, bài này mình sẽ liệt kê các hàm dùng để xử lý mảng hay dùng trong PHP để các bạn tiện tra cứu cũng như học tập nhé!
is_array($array)
Hàm có tác dụng kiểm tra xem một biến có phải mảng hay không. Trả về true nếu là mảng và ngược lại sẽ trả về false.
<?php $bien1 = array("tanhongit.net", "php căn bản"); $bien2 = ''; var_dump(is_array($bien1)); // Kết quả trả về true var_dump(is_array($bien2)); // Kết quả trả về false ?>
in_array($value,$array)
Hàm có tác dụng kiểm tra xem mảng $array có tồn tại giá trị $value hay không. Nếu có sẽ trả về true và ngược lại trả về false.
<?php $bien1 = array("tanhongit.net", "php căn bản"); var_dump(in_array("tanhongit.net",$bien1)); // Kết quả trả về true var_dump(in_array("hello",$bien1)); // Kết quả trả về false ?>
array_values($array)
Chuyển mảng $array sang dạng mảng chỉ mục.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456' ); var_dump(array_values($array)); /* Kêt quả của mảng là array (size=2) 0 => string 'tanhongit.net' (length=13) 1 => string '123456' (length=6) ) */ ?>
array_count_values($array)
Đếm số lần xuất hiện của các phần tử giống nhau trong mảng $array và trả về một mảng kết quả với các value là các giá trị đếm đó.
<?php $array = array('tanhongit.net', 'hello', '123456', 'hello'); var_dump(array_count_values($array)); /*array (size=3) 'tanhongit.net' => int 1 'hello' => int 2 //'hello xuất hiện 2 lần' 123456 => int 1 */ ?>
array_keys($array)
Hàm này có tác dụng trả về một dạng mảng chỉ mục mà trong mảng đó sẽ có phần tử là key của mảng ban đầu.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456' ); var_dump(array_keys($array)); /* kết quả : array (size=2) 0 => string 'username' (length=8) 1 => string 'password' (length=8) */ ?>
array_change_key_case($array, $case)
Tác dụng của hàm này là chuyển tất cả các chỉ mục key trong mảng $array sang chữ hoa nếu $case = 1 và sang chữ thường nếu $case = 0.
Ta có thể dùng hằng số CASE_UPPER thay cho số 1 và CASE_LOWER thay cho số 0.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456' ); $array = array_change_key_case($array,1); var_dump($array); /* kết quả : array (size=2) 'USERNAME' => string 'tanhongit.net' (length=13) 'PASSWORD' => string '123456' (length=6) */ ?>
array_key_exists($key,$array)
Kiểm tra xem khoá $key có tồn tại trong mảng $array hay không. Nếu có sẽ trả về true và trả về false nếu không có.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456' ); var_dump(array_key_exists("username",$array)); //kết quả var_ dump sẽ trả về true var_dump(array_key_exists("hello",$array)); //kết quả var_ dump sẽ trả về false ?>
array_pop($array)
Tác dụng của hàm này sẽ cắt phần tử cuối cùng ra khỏi mảng.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456' ); var_dump(array_pop($array)); //phần tử cuối cùng sẽ bị cắt mất khỏi mảng //kết quả output: '123456' var_dump($array); //kết quả màn hình: array (size=1) //'username' => string 'tanhongit.net' (length=13) ?>
Ta có thể xuất ra phần tử đã bị cắt từ hàm array_pop($array) bằng cách gán giá trị của nó vào một biến và xuất biến đó ra. Nhuw sau:
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456' ); $pop = array_pop($array); //gán giá trị đã bị cắt cuối mảng vào 1 biến var_dump($array); // xuất mảng echo $pop; // xuất giá trị đã bị cắt khỏi mảng bởi hàm array_pop ?>
array_push($array,$value1,$value2…)
Hàm này có tác dụng thêm một hoặc nhiều phần tử vào cuối mảng với các các giá trị $value1, $value2 được truyền vào.
Nếu ta var_dump hàm array_push này thì kết quả màn hình sẽ trả về tổng cộng số lượng phần tử có trong mảng sau khi thêm.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456' ); var_dump(array_push($array,"hello")); //kết quả output: 3 var_dump($array); /*kết quả: array (size=3) 'username' => string 'tanhongit.net' (length=13) 'password' => string '123456' (length=6) 0 => string 'hello' (length=5) */ ?>
array_shift($array)
Trái ngược với hàm array_pop, hàm array_shift sẽ cắt phần tử đầu tiên trong mảng $array ra khỏi mảng. Ta có thể xuất giá trị đã bị cắt khỏi mảng đó bằng cách gán giá trị của array_shift($array) vào 1 biến và xuất nó ra.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456' ); $shift = array_shift($array); //gán giá trị của phần tử đầu tiên trong mảng đã bị cắt vào 1 biến var_dump($array); /*kết quả màn hình: array (size=1) 'password' => string '123456' (length=6)*/ echo $shift; //giá trị của phần tử đầu tiên trong mảng đã bị cắt đi
array_unshift($array,$value1,$value2…)
Trái ngược với array_push, hàm array_unshift sẽ thêm một hoặc nhiều phần tử vào đầu mảng với các các giá trị $value1, $value2 được truyền vào.
Nếu ta var_dump hàm array_push này thì kết quả màn hình sẽ trả về tổng cộng số lượng phần tử có trong mảng sau khi thêm.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456' ); var_dump(array_unshift($array,"hello")); //kết quả output: 3 var_dump($array); /*kết quả: array (size=3) 0 => string 'hello' (length=5) 'username' => string 'tanhongit.net' (length=13) 'password' => string '123456' (length=6) */ ?>
array_combine($array_keys, $array_values)
Tác dụng của hàm là trộn 2 mảng $array_keys và $array_values thành một mảng kết hợp. Trong đó, $array_keys là danh sách keys, $array_value là danh sách value tương ứng với key. Với điều kiện là 2 mảng này phải bằng nhau.
<?php $array_keys = array('username','password'); $array_values = array('tanhongit.net','123456'); var_dump(array_combine($array_keys,$array_values)); /*output: array (size=2) 'username' => string 'tanhongit.net' (length=13) 'password' => string '123456' (length=6) */ ?>
array_merge($array,$array…)
Cao cấp hơn hàm array_combine (chỉ có tác dụng gộp 2 mảng thành 1), hàm array_merge này có tác dụng gộp 2 hoặc nhiều mảng hơn nữa thành 1 mảng duy nhất
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456', ); $array1 = array(1, 2, 3); $array2 = array( 1 => 'hello', 'name' => 'Hồng' ); var_dump(array_merge($array,$array1,$array2)); /*kết quả: array (size=7) 'username' => string 'tanhongit.net' (length=13) 'password' => string '123456' (length=6) 0 => int 1 1 => int 2 2 => int 3 3 => string 'hello' (length=5) 'name' => string 'Hồng' (length=4) */ ?>
array_rand($array, $number)
Hàm có tác dụng lấy ra key ngẫu nhiên trong mảng với $number là số lượng muốn lấy. Mình sẽ lấy ví dụ tiếp tục từ phần array_merge trên:
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456', ); $array1 = array(1, 2, 3); $array2 = array( 1 => 'hello', 'name' => 'Hồng' ); echo array_rand(array_merge($array,$array1,$array2)); //lấy 1 phần tử ngẫu nhiên trong mảng kết hợp //kêt quả lệnh echo: password var_dump(array_rand(array_merge($array,$array1,$array2), 3)); //lấy 3 phần tử ngẫu nhiên trong mảng kết hợp /*kết quả: array (size=3) 0 => string 'password' (length=8) 1 => int 2 2 => int 3 */ ?>
array_unique($array)
Hàm giúp loại bỏ giá trị trùng nếu có trong mảng $array.
<?php $array = array('tanhongit.net', 'hello', '123456', 'hello'); var_dump(array_unique($array)); /*array (size=3) 0 => string 'tanhongit.net' (length=13) 1 => string 'hello' (length=5) 2 => string '123456' (length=6) */ ?>
array_flip($array)
Hàm này có tác dụng chuyển đổi key của mảng thành value và ngược lại.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456' ); var_dump(array_flip($array)); /*kết quả: array (size=2) 'tanhongit.net' => string 'username' (length=8) 123456 => string 'password' (length=8) */ ?>
array_reverse($array)
Hàm có tác dụng đảo ngược lại vị trí sắp xếp của tất cả phần tử có trong mảng.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456', ); var_dump(array_reverse($array)); /*kết quả: array (size=2) 'password' => string '123456' (length=6) 'username' => string 'tanhongit.net' (length=13) */ ?>
array_search($keyword, $array)
Hàm có tác dụng tìm kiếm giá trị của mảng và trả về key của phần tử đó nếu có. Trong đó $keyword là giá trị truyền vào, $array là mảng cần tìm.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456', ); var_dump(array_search('tanhongit.net',$array)); /*kết quả: string 'username' (length=8) */ ?>
array_slice($array,$begin,$number)
Hàm có tác dụng lấy ra số lượng các phần tử được truyền vào thông qua $number và bắt đầu lấy ra từ $begin trong mảng.
<?php $array = array( 'username' => 'tanhongit.net', 'password' => '123456', ); var_dump(array_slice($array, 0)); //lấy ra các phần tử bắt đầu từ chỉ mục $key = 0 /*kết quả: array (size=2) 'username' => string 'tanhongit.net' (length=13) 'password' => string '123456' (length=6) */ var_dump(array_slice($array, 0 , 1)); //lấy ra 1 phần tử bắt đầu từ chỉ mục $key = 0 /*Kết quả: array (size=1) 'username' => string 'tanhongit.net' (length=13) */ var_dump(array_slice($array, 1 , 1)); //lấy ra 1 phần tử bắt đầu từ chỉ mục $key = 1 /*Kết quả: array (size=1) 'password' => string '123456' (length=6) */ ?>
Sẽ còn cập nhật…
Kết thúc
Bài viết này mình đã liệt kê một số hàm thường được sử dụng để xử lý mảng trong PHP, Nếu các bạn muốn xem thêm hãy truy cập link này để tham khảo nhé!
Vậy là trong lộ trình học php căn bản thì tới đây mình đã liệt kê hết các kiến thức về mảng giúp các bạn học tập. Cho nên sang bài tiếp theo chúng ta sẽ qua chuỗi trong PHP và các vấn đề xoay quanh chuỗi nhé!
Xem thêm:
- Lộ trình học PHP Căn Bản
- Bài 10: Mảng (Array) Trong PHP
- Bài 9: Hàm (Function) Trong PHP
- Bài 7: Vòng lặp Foreach trong PHP (Các loại vòng lặp phần 2)
- Cách sửa lỗi error establishing a database connection cho website
- Mở Đọc File Excel Trong C# Với Microsoft Office Interop Excel dll
Leave a Reply