Khoá học PHP cơ bản online Bài 2: Mảng trong PHP

I. Khái niệm về mảng trong PHP

       Cũng như những ngôn ngữ lập trình khác. Trong php hỗ trợ một kiểu dữ liệu là dữ liệu kiểu mảng. Mảng hay còn gọi là array, là một biến danh sách với các cặp key(khóa) và value(giá trị). Nghĩa là, thay vì một biến thông thường chỉ lưu được một giá trị thì với mảng  nó cho phép chúng ta lưu trữ, sắp xếp thứ tự và truy cập nhiều giá trị với một tên biến.

       Không giống như C++ hay Java, trong PHP chúng ta có thể tạo 1 mảng với các phần tử không đồng nhất về mặt dữ liệu.

II. Khai báo mảng trong PHP

  •        Để khởi tạo mảng trong php ta sử dụng cú pháp sau:

         $ten_bien = array(“gia_tri_1″,”gia_tri_2″,”gia_tri_3″,…,”gia_tri_n”);
Hoặc:
         $ten_bien = array(
                                               “khóa_1″ => “gia_tri_1″,
                                               “khóa_2″ => “gia_tri_2″,…,
                                               “khóa_3″ => “gia_tri_3″);

       Các giá trị trong mảng cách nhau bởi dấu phảy ,
       Các giá trị của mảng có thể là kiểu string, kiểu số, kiểu mảng.

          Ví dụ:

Kết quả in ra là: Java và PHP. Ta thấy, chỉ số của mảng trong PHP luôn bắt đầu từ 0.

  •        Thêm giá trị vào mảng

         $ten_mang[ ] = ‘gia_tri';
         $ten_mang[‘key’] = ‘gia_tri';

       Ví dụ:

 

III. Mảng đa chiều trong PHP

       Mảng đa chiều được biết đến như một mảng dữ liệu, ma trận hay lưới hai chiều, ba chiều. Hoặc còn được gọi là mảng của các mảng. Mỗi phần tử trong mảng có thể là một mảng con (array()).

       Ví dụ:

 

IV. Duyệt mảng

Trong PHP, chúng ta có thể duyệt mảng bằng vòng for hoặc while. Nhưng thông dụng nhất vẫn là dùng foreach. Bài viết này chúng ta sẽ tìm hiểu cách duyệt mảng bằng vòng foreach. Còn để hiểu chi tiết về vòng foreach chúng ta sẽ tìm hiểu ở bài viết khác.

Cú pháp:

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ụ:

 

       Duyệt qua một mảng kết hợp:

       Cú pháp:

       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ụ:

 

IV. Các hàm xử lý mảng trong PHP

         1. print_r ($array)
Được dùng để xem cấu trúc của mảng

         2. count ($array)
Trả về giá trị kiểu số nguyên là số phần tử của mảng

         3. array_values ($array)
Trả về một mảng liên tục có các phần tử có giá trị là giá trị lấy từ các phần tử của mảng $array

         4. array_keys ($array)
Trả về một mảng liên tục có các phần tử có giá trị là khóa lấy từ các phần tử của mảng $array.

         5. array_pop ($array)
Loại bỏ phần tử cuối cùng của mảng. Hàm trả về phần tử cuối cùng đã được loại bỏ.

         6. array_push ($array, $val1, $val2, … , $valn)
Thêm một hoặc nhiều phần tử vào cuối mảng $array. Hàm trả về kiểu số nguyên là số lượng phần tử của mảng $array mới

         7. array_shift ($array)
Loại bỏ phần tử đầu tiên của mảng. Hàm trả về phần tử đầu tiên đã được loại bỏ.

         8. array_unshift ($array, $val1, $val2, … , $valn)
Thêm một hoặc nhiều phần tử vào đầu mảng $array. Hàm trả về kiểu số nguyên là số lượng phần tử của mảng $array mới

         9. array_flip ($array)
Trả về một mảng có khóa và giá trị được hoán đổi cho nhau so với mảng $array (giá trị thành khóa và khóa thành giá trị)

         10. sort ($array)
Sắp xếp mảng $array theo giá trị tăng dần

         11. array_reverse ($array)
Đảo ngược vị trí các phần tử của mảng

         12. array_merge ($array1, $array2, …, $arrayn)
Nhập 2 hay nhiều mảng thành một mảng duy nhất và trả về mảng mới

         13. array_rand ($array, $number)
Lấy ngâu nhiên $number phần tử từ mảng $array và đưa vào màng mới (lấy giá trị khóa)

         14. array_search ($value,$array)
Tìm phần tử mang giá trị $value trong mảng $array. Trả về khóa của phần tử tìm được.

         15. array_slice ($array, $begin. $finish)
Trích lấy 1 đoạn phần tử của mảng $array từ vị trí $begin đến vị trí $finish. Phần tư đầu tiên (chỉ số 0), phần tử cuối cùng (chỉ số -1 hay count($array) – 1)

         16. array_unique ($array)
Loại bỏ những phần tử trùng nhau trong mảng và trả về mảng mới

         17. implode ($str, $array)
Chuyển các giá trị của mảng $array thành một chuỗi bao gồm các phần tử cách nhau bởi ký tự $str

         18. explode ($delimiter, $str)
Chuyển một chuỗi thành một mảng. Tách chuỗi dựa vào $delimiter, mỗi đoàn tách ra sẽ thành một phần tử của mảng mới

         19. serialize ($value)
Chuyển chuỗi/mảng/đối tượng $value thành một chuỗi đặc biệt để lưu vào cơ sở dữ liệu

         20. unserialize ($value)
Chuyển chuỗi đặc biệt được tạo từ serialize($value) về trạng thái ban đầu

         21. array_key_exists ($key, $array)
Kiểm tra khóa $key có tồn tại trong mảng $array hay không? Nếu có trả về giá trị true.

         22. in_array ($value, $array)
Kiểm tra giá trị $value có tồn tại trong mảng $array hay không? Nếu có trả về giá trị true.

         23. array_diff ($array1, $array2)
Trả về một mảng bao gồm các phần tử có giá trị tồn tại trong mảng $array1 nhưng không tồn tại trong mảng $array2

         24. array_diff_assoc ($array1, $array2)
Trả về một mảng bao gồm các phần tử có khóa tồn tại trong mảng $array1 nhưng không tồn tại trong mảng $array2

         25. array_intersect ($array1, $array2)
Trả về một mảng bao gồm các phần tử giống nhau về giá trị giữa 2 mảng $array1 và $array2

         26. array_intersect_assoc ($array1, $array2)
Trả về một mảng bao gồm các phần tử giống nhau về khóa và giá trị giữa 2 mảng $array1 và $array2

         27. array_combine ($keys, $values)
Tạo một mảng mới có khóa được lấy từ mảng $keys và giá trị được lấy từ mảng $values theo tuần tự (Yêu cầu số phần tử ở 2 mảng phải bằng nhau)

Ok, như vậy là các bạn đã nắm được cách khai báo và sử dụng mảng trong PHP rồi đúng không nào?

Hẹn gặp lại các bạn ở các bài học tiếp theo!!

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">