MẢNG TRONG PHP

05-09-2016 11:59

MẢNG TRONG PHP

 

Ở những bài trước chúng ta đã đi tìm hiểu về biến, chúng ta sử dụng biến khi chúng ta muốn lưu trữ các thông tin để có thể sử dụng về sau. Ví dụ như chúng ta khai báo biến tên để lưu tên hoặc tuổi của một ai đó,… Vậy nếu trong trường hợp chúng ta có danh sách hàng trăm, hàng nghìn tên cần được lưu thì chúng ta sẽ làm như thế nào. Trong trường hợp như vậy chúng ta sẽ sử dụng mảng.

 

MẢNG LÀ GÌ ?

Mảng là một biến đặc biệt, nó có thể lưu nhiều hơn một giá trị tại một thời điểm.

Bạn có một danh sách các phần tử ( ví dụ, một danh sách tên các xe), nếu chúng ta lưu trữ các tên xe trong các biến đơn thì sẽ như sau:

$car1 = “Volvo”;

$car2 = “BMW”;

$car3 = “Toyota”;

Tuy nhiên, bạn sẽ giải quyết như thế nào khi mà bạn muốn tìm kiếm một xe trong danh sách các xe trên ? Và nếu trường hợp không phải là 3 xe mà là 300 xe thì bạn sẽ làm như thế nào.

Giải pháp là chúng ta tạo ra một mảng!

Một mảng có thể lưu trữ nhiều giá trị dưới một tên đơn, và bạn có thể truy cập các giá trị này bằng cách tham chiếu đến chỉ số của mảng.

 

TẠO MẢNG TRONG PHP

Trong PHP, cặp dấu [] được sử dụng để tạo mảng:

Ví dụ : $cars= [“Volvo”, “BMW”, “Toyota”];

Trong PHP, có ba loại mảng:

            Mảng chỉ số - Mảng với chỉ số ở dạng số

            Mảng kết hợp - Mảng với chỉ số ở dạng chuỗi

            Mảng đa chiều – Mảng có chứa một hoặc nhiều mảng khác

 

MẢNG CHỈ SỐ

Có ba cách để tạo mảng chỉ số:

Cách 1:

$car = array(“Volvo”, “BMW”, “Toyota”);

Cách 2:

$car = [“Volvo”, “BMW”, “Toyota”];

Hai cách trên chỉ số được gán tự động ( chỉ số luôn luôn bắt đầu từ 0). Các bạn chú ý là cách 2 chỉ hỗ trợ cho các phiên bản php từ 5.4 trở lên.

Cách 3:

$cars[0] = “Volvo”;

$cars[1] = “BMW”;

$cars[2] = “Toyota”;

Cách ba này thì chỉ số được gán thủ công.

Ví dụ bên dưới tạo một mảng chỉ số có tên là $cars, gán ba giá trị cho nó, và sau đó in chuỗi bao gồm các giá trị của mảng ra màn hình.

<?php

$cars = ["Volvo", "BMW", "Toyota"];

echo "Tôi thích $cars[0], $cars[1] và $cars[2]";

 

Kết quả:  Tôi thích Volvo, BMW và Toyota

 

LẤY CHIỀU DÀI CỦA MỘT MẢNG – count()

Hàm count() được sử dụng để trả về chiều dài ( số lượng phần tử ) của một mảng:

<?php
$fruids = ["apple", "orange", "lemon", "mango"];
echo count ($fruids);

Kết quả:  4

 

LẶP QUA MỘT MẢNG CHỈ SỐ

Để lặp qua và in toàn bộ giá trị của một mảng chỉ số, bạn có thể dùng vòng lặp for, như sau:

<?php
$fruids = ["apple", "orange", "lemon", "mango"];

$arrayLength =  count($fruids);

for($i = 0; $i < $arrayLength; $i++){    

echo $fruids[$i] . "<br/>";

}

Kết quả :

 

MẢNG KẾT HỢP

Mảng kết hợp là mảng mà sử dụng chuỗi thay cho chỉ số ( gọi là key). Các key này được chúng ta gán cho chúng.
Tương tự như với mảng chỉ số, chúng ta cũng có ba cách để tạo ra mảng kết hợp:

Cách 1:

$person = array(

            “name” => “Toan Nguyen”,

            “age” => 25,

            “address” => “Ha Noi”

);

Cách 2:

$person = [

            “name” => “Toan Nguyen”,

            “age” => 25,

            “address” => “Ha Noi”

];

Cách 3:

$person[“name”] = “Toan Nguyen”;

$person[“age”] = 25;

$person[“address”] = “Ha Noi”;

 

LẶP QUA MỘT MẢNG KẾT HỢP

Để lặp qua và in toàn bộ giá trị của một mảng kết hợp, bạn có thể sử dụng vòng lặp foreach, như sau:

 <?php $person = [     "name" => "Toan Nguyen",     "age" => 25,     "address" => "Ha Noi" ];
 foreach($person as $property){     echo $property . "<br/>"; }

 

MẢNG ĐA CHIỀU

Mảng đa chiều sẽ được giải thích ở trong phần PHP nâng cao ở các bài tiếp theo.

 

Bài tập: Khai báo một danh sách các tên ( khoảng 10 tên). Sau đó in ra theo định dạng danh sách như sau:

 

Như vậy, chúng ta đã đi tìm hiểu xong về mảng trong PHP, ở bài học tiếp theo chúng ta sẽ cùng đi tìm hiểu về câu lệnh điều kiện trong PHP.

 

Nguồn tham khảo: http://www.w3schools.com/php/php_arrays.asp

 

Toàn Nguyễn

 

 

Bài viết cùng chủ đề