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
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
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
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
$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
<?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
<?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
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
<?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
<?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
<?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