PHP Cơ bản
PHP Nâng cao
PHP & Cơ sở dữ liệu MySQL
Ví dụ PHP
Tài liệu tham khảo PHP
Quảng cáo

Mảng PHP

Trong hướng dẫn này, bạn sẽ học cách lưu trữ nhiều giá trị trong một biến duy nhất trong PHP - Mảng PHP

Mảng trong PHP là gì

Mảng là các biến phức tạp cho phép chúng ta lưu trữ nhiều hơn một giá trị hoặc một nhóm giá trị dưới một tên biến duy nhất. Giả sử bạn muốn lưu trữ màu trong tập lệnh PHP của mình. Lưu trữ từng màu một trong một biến có thể trông giống như sau:

Ví dụ

<?php
$color1 = "Red";
$color2 = "Green";
$color3 = "Blue";
?>

Nhưng điều gì xảy ra, nếu bạn muốn lưu trữ các tiểu bang hoặc tên thành phố của một quốc gia trong các biến và lần này không chỉ ba mà có thể là hàng trăm. Việc lưu trữ mỗi tên thành phố trong một biến riêng biệt là một việc khá khó, nhàm chán và là một ý tưởng tồi. Và đây mảng phát huy tác dụng.


Các loại mảng trong PHP

Có ba loại mảng mà bạn có thể tạo. Đó là:

  • Mảng được lập chỉ mục (Indexed array) - Mảng có khóa là các số
  • Mảng liên kết (Associative array) - Mảng trong đó mỗi khóa có giá trị cụ thể của riêng nó.
  • Mảng đa chiều (Multidimensional array) - Mảng chứa một hoặc nhiều mảng trong chính mảng đó.

Mảng được lập chỉ mục

Mảng được lập chỉ mục hoặc mảng số lưu trữ mỗi phần tử của mảng với một chỉ mục số. Các ví dụ sau đây cho thấy hai cách để tạo một mảng được lập chỉ mục, cách dễ nhất là:

Ví dụ

<?php
// Define an indexed array
$colors = array("Red", "Green", "Blue");
?>
 

Lưu ý: Trong mảng được lập chỉ mục hoặc mảng số, các chỉ mục được gán tự động và bắt đầu bằng 0 và các giá trị có thể là bất kỳ kiểu dữ liệu nào.

Điều này tương đương với ví dụ sau, trong đó các chỉ mục được gán theo cách thủ công:

Ví dụ

<?php
$colors[0] = "Red"; 
$colors[1] = "Green"; 
$colors[2] = "Blue"; 
?>

Mảng liên kết

Trong một mảng kết hợp, các khóa được gán cho các giá trị có thể là các chuỗi tùy ý và do người dùng xác định. Trong ví dụ sau, mảng sử dụng các khóa thay vì số chỉ mục:

Ví dụ

<?php
// Define an associative array
$ages = array("Peter"=>22, "Clark"=>32, "John"=>28);
?>

Ví dụ sau tương đương với ví dụ trước, nhưng hiển thị một cách khác để tạo mảng liên kết:

Ví dụ

<?php
$ages["Peter"] = "22";
$ages["Clark"] = "32";
$ages["John"] = "28";
?>

Mảng đa chiều

Mảng nhiều chiều là một mảng trong đó mỗi phần tử cũng có thể là một mảng và mỗi phần tử trong mảng con có thể là một mảng hoặc chứa nhiều mảng bên trong chính nó, v.v. Ví dụ về mảng đa chiều sẽ trông giống như sau:

Ví dụ

<?php
// Define a multidimensional array
$contacts = array(
    array(
        "name" => "Peter Parker",
        "email" => "peterparker@mail.com",
    ),
    array(
        "name" => "Clark Kent",
        "email" => "clarkkent@mail.com",
    ),
    array(
        "name" => "Harry Potter",
        "email" => "harrypotter@mail.com",
    )
);
// Access nested value
echo "Peter Parker's Email-id is: " . $contacts[0]["email"];
?>

Xem cấu trúc và giá trị mảng

Bạn có thể xem cấu trúc và giá trị của bất kỳ mảng nào bằng cách sử dụng một trong hai câu lệnh - var_dump()hoặc print_r(). Câu lệnh print_r(), tuy nhiên, cho một chút ít thông tin. Hãy xem xét ví dụ sau:

Ví dụ

<?php
// Define array
$cities = array("London", "Paris", "New York");
 
// Display the cities array
print_r($cities);
?>

Câu lệnh print_r() cho kết quả sau:

Array ( [0] => London [1] => Paris [2] => New York )

Kết quả này hiển thị khóa và giá trị cho mỗi phần tử trong mảng. Để biết thêm thông tin, hãy sử dụng câu lệnh sau:

Ví dụ

<?php
// Define array
$cities = array("London", "Paris", "New York");
 
// Display the cities array
var_dump($cities);
?>

Câu lệnh var_dump()này cho kết quả sau:

array(3) { [0]=> string(6) "London" [1]=> string(5) "Paris" [2]=> string(8) "New York" }

Kết quả này hiển thị kiểu dữ liệu của mỗi phần tử, chẳng hạn như một chuỗi gồm 6 ký tự, ngoài khóa và giá trị. Trong chương tiếp theo, bạn sẽ học cách sắp xếp các phần tử của mảng.

Bạn sẽ học cách lặp qua các giá trị của một mảng trong chương sau .

Bài viết này đã giúp ích cho bạn?

Advertisements