Mảng 1 chiều trong PHP

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

Tìm hiểu hàm array() UK, US /əˈreɪ/

 

Mảng là gì?

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

//Lưu thông thường
$user_1 = 'hoangnam';
$user_2 = 'kimanh';
$user_3 = 'haminh';

//Lưu mảng
$list_users = array('hoangnam','kimanh','haminh');

Cấu trúc mảng

Về mục lục

Key key1 key2 key3
Value value1 value2 value3

Key: Dùng để phân biệt các phần tử mảng, nó là duy nhất và được tạo bởi Chuỗi hoặc Số nguyên.

Value: Giá trị của từng phần tử mảng.

(Key,Value) là cặp thông tin đặc trưng của mỗi phần tử mảng.

$myArray = array('key1' => 'value1','key2' => 'value2','key3' => 'value3'); //Có thể sử dụng '' hoặc ""

Khởi tạo giá trị cho mảng

Về mục lục

Khởi tạo ngay lúc tạo mảng

$info = array(
    'id' => 1, //id là số, không để kiểu chuỗi
    'fullname' => 'Nguyễn Hoàng An',
    'email' => 'info@azfree.co',
);

Khởi tạo giá trị riêng lẻ

//Lúc đầu là mảng rỗng
$info = array();

//Sau đó cập nhật từng phần tử cho mảng
$info['id'] = 1;
$info['fullname'] = 'Nguyễn Hoàng An';
$info['email'] = 'info@azfree.co';

Mảng rỗng

Về mục lục

Dùng làm mảng khởi tạo như: Kiểm tra dữ liệu, thông báo lỗi,…

$error = array();

Ví dụ:

<?php

//Tạo mảng rỗng
$error = array();

//Cập nhật cho mảng rỗng
$error['user'] = 'User không để trống';

//Xuất dữ liệu
echo "<pre>";
print_r($error);
echo "</pre>";

?>

Kết quả:

Array
(
    [user] => User không để trống
)

Mảng có key mặc định

Về mục lục

$list_odd = array(0 => 1, 1 => 3, 2 => 5, 3 => 7, 4 => 9); //Cách này không cần thiết

Cách viết rút gọn:

$list_odd = array(1, 3, 5, 7, 9); //Cách này hay dùng

Key mặc định chạy từ 0, 1, 2, 3,… và có cùng tính chất.

Thêm phần tử mảng

Về mục lục

<?php

$list_odd = array(1, 3, 5, 7); 

//Thêm phần tử 
$list_odd[] = 9;

//Xuất dữ liệu
echo "<pre>";
print_r($list_odd);
echo "</pre>";

?>

Kết quả:

Array
(
    [0] => 1
    [1] => 3
    [2] => 5
    [3] => 7
    [4] => 9
)

Sửa/cập nhật phần tử mảng

Về mục lục

<?php

$list_odd = array(1, 3, 6, 7); 

//Sửa phần tử mảng 
$list_odd[2] = 5;

//Xuất dữ liệu
echo "<pre>";
print_r($list_odd);
echo "</pre>";

?>

Kết quả:

Array
(
    [0] => 1
    [1] => 3
    [2] => 5
    [3] => 7
)

Mảng có key xác định

Về mục lục

Key xác định là key mang đặc trưng của phần tử đó, nó có tính chất khác nhau. Mỗi phần tử có Key mang ý nghĩa tương đương.

Thêm phần tử mảng

Về mục lục

<?php

$info = array(
    'id' => 1,
    'fullname' => 'Nguyễn Hoàng An',
    'address' => 'AZFREE',
    'email' => 'info@azfree.co'
);

//Thêm phần tử mảng
$info['age'] = '20';

//Xuất dữ liệu
echo "<pre>";
print_r($info);
echo "</pre>";

?>

Kết quả:

Array
(
    [id] => 1
    [fullname] => Nguyễn Hoàng An
    [address] => AZFREE
    [email] => info@azfree.co
    [age] => 20
)

Sửa/cập nhật phần tử mảng

Về mục lục

<?php

$info = array(
    'id' => 1,
    'fullname' => 'Nguyễn Hoàng An',
    'address' => 'AZFREE',
    'email' => 'info@azfree.co',
    'age' => 20
);

//Sửa phần tử mảng
$info['address'] = 'Việt Nam';

//Xuất dữ liệu
echo "<pre>";
print_r($info);
echo "</pre>";

?>

Kết quả:

Array
(
    [id] => 1
    [fullname] => Nguyễn Hoàng An
    [address] => Việt Nam
    [email] => info@azfree.co
    [age] => 20
)

Lấy giá trị mảng

Về mục lục

<?php

$info = array(
    'id' => 1,
    'fullname' => 'Nguyễn Hoàng An',
    'email' => 'info@azfree.co',
);

//B1: Lấy giá trị của mảng, phần này có thể bỏ qua
$id = $info['id'];
$fullname = $info['fullname'];
$email = $info['email'];

?>

<!-- B2: Lấy thông tin và xuất lên html -->
<html>
    <head>
        <title>Lấy thông tin mảng</title>
    </head>
    <body>
        <p>ID: <strong><?php echo $id ?></strong></p>
        <p>Họ tên: <strong><?php echo $fullname ?></strong></p>
        <p>Email: <strong><?php echo $info['email'] ?></strong></p> <!-- Đây là lý do B1 không cần tới -->
    </body>
</html>

Kết quả:

ID: 1

Họ tên: Nguyễn Hoàng An

Email: info@azfree.co