Array trong PHP là dạng cấu trúc nhiều phần tử được chứa trong 1 biến.
Khi một biến chứa nhiều phần tử ta sẽ nghĩ đến array và hôm nay mình sẽ học cách tạo và duyệt mảng trong PHP
Mảng một chiều
<?php
$a = array("Đồng", "USD", "Vàng");
// Ta sẽ tạo một biến $a chứa nhiều phần tử
// Để lấy giá trị của biến $a ta dùng
echo $a[0]; // Đồng
echo $a[1]; // USD
echo $a[2]; // Vàng
Bạn thấy đó, mỗi giá trị sẽ ứng với 1 key, và key sẽ bắt đầu từ số 0
.
Giờ đặt trường hợp tôi không muốn key là số nữa, tôi muốn là chuỗi có được không? Xin thưa là được nhé, xem ví dụ bên dưới
<?php
$a = array("a" => "Đồng", "b" => "USD", "c" => "Vàng");
// Để lấy giá trị của biến $a ta dùng
echo $a["a"]; // Đồng
echo $a["b"]; // USD
echo $a["c"]; // Vàng
// lưu ý cấu trúc sẽ có dạng "chuỗi" => "giá trị"
Mảng đa chiều
Giờ tôi có một ví dụ, mỗi người học sinh đều có các giá trị sau: tên, cân nặng, ngày sinh như vậy mỗi học sinh sẽ là 1 mảng và các mảng sẽ cách nhau bằng dấu phẩy ,
<?php
$danh_sach = array(
array(
'name' => 'Huỳnh Tòng',
'weight' => '30kg',
'birthday' => '20/2/2019',
'power' => array(
'hk-1' => 2.3,
'hk-2' => 6.8,
)
),
array(
'name' => 'Mai Xuân',
'weight' => '28kg',
'birthday' => '10/5/2019',
'power' => array(
'hk-1' => 9.3,
'hk-2' => 4.8,
)
),
array(
'name' => 'Bé Xíu',
'weight' => '18kg',
'birthday' => '30/7/2019',
'power' => array(
'hk-1' => 6.3,
'hk-2' => 7.8,
)
)
);
Trường hợp 1: lấy thông tin từng thành viên trong lớp
<?php
// Ví dụ tôi muốn lấy học sinh tên bé Xíu, sẽ có key = 2
echo 'Tên: '. $danh_sach[2]['name'];
echo '<br>';
echo 'Cân nặng: '. $danh_sach[2]['weight'];
echo '<br>';
echo 'Ngày sinh: '. $danh_sach[2]['birthday'];
echo '<br>';
echo 'Học kỳ 1: '. $danh_sach[2]['power']['hk-1'];
echo '<br>';
echo 'Học kỳ 2: '. $danh_sach[2]['power']['hk-2'];
Trường hợp 2: lấy tất cả thông thành viên trong lớp
Ta sẽ sử dụng hàm foreach
để duyệt
<?php
foreach($danh_sach as $hoc_vien){
echo 'Tên: '. $hoc_vien['name'];
echo '<br>';
echo 'Cân nặng: '. $hoc_vien['weight'];
echo '<br>';
echo 'Ngày sinh: '. $hoc_vien['birthday'];
echo '<br>';
foreach($hoc_vien['power'] as $v){
echo 'Học kỳ 1: '. $v['hk-1'];
echo '<br>';
echo 'Học kỳ 2: '. $v['hk-2'];
}
echo "<hr>";
};
Hi vọng ở bài array cơ bản này, bạn sẽ có những khái niệm và cách sử dụng ở dự án của bạn