Bài giảng Thiết kế và lập trình Web - Bài 6: Thao tác trên mảng cung cấp cho người học các kiến thức: Khái niệm về mảng, khai báo và sử dụng mảng, mảng hai chiều, sắp xếp mảng, sắp xếp mảng một chiều,... Mời các bạn cùng tham khảo.
Thiết kế lập trình Web Bài Thao tác mảng Viện CNTT & TT Thiết kế lập trình Web Khái niệm mảng Mảng – Bao gồm dãy nhớ có nhiều nhớ cho phép biểu diễn thông tin dạng danh sách thực tế PHP: Các phần tử mảng có kiểu liệu khác Ví dụ: – số ngun => mảng có phần tử – Danh sách học sinh => mảng thông tin học sinh Thiết kế lập trình Web Khai báo sử dụng mảng Thiết kế lập trình Web Mảng chiều Khai báo khởi tạo – Dùng array() để khai báo khởi tạo – Mảng chưa biết số phần tử giá trị • Cú pháp: $tên_mảng = array(); • Ví dụ: Thiết kế lập trình Web Mảng chiều – Mảng biết trước số phần tử • Cú pháp: $tên_mảng = array(); • Ví dụ: Thiết kế lập trình Web Mảng chiều – Mảng biết trước giá trị phần tử mảng • • • • Vừa khai báo vừa khởi tạo Cú pháp: $tên_mảng = array([khóa=>] giá trị, , ); Các phần tử mảng cách dấu , Trong đó: – khóa: số nguyên dương / chuỗi – Nếu khóa chuỗi: dùng cặp nháy đơi “giá trị khóa” cặp nháy đơn ‘giá trị khóa’ – Mặc dịnh, khóa tự động phát sinh, với phần tử mảng khóa có giá trị 0, phần tử thứ hai mảng khóa có giá trị 1, … Thiết kế lập trình Web Mảng chiều – Mảng biết trước giá trị phần tử mảng • Chú ý: khơng tạo hai khóa có giá trị trùng • Có thể dùng tất kiểu liệu cho giá trị khóa • Ví dụ: Thiết kế lập trình Web Mảng chiều – Khởi tạo giá trị cho phần tử mảng • Phần tử dùng khóa mặc định (người dùng khơng tạo giá trị cho khóa) Cú pháp: $tên_mảng[] = ; • Phần tử có giá trị khóa Cú pháp: $tên_mảng[“giá trị khóa”] = ; Thiết kế lập trình Web Mảng chiều Truy xuất phần tử mảng – Cú pháp: $giá_trị = $tên_mảng[]; – Ví dụ: Thiết kế lập trình Web Mảng chiều Thao tác mảng chiều – Đếm số phần tử mảng: count() • Kết trả hàm số phần tử có mảng • Cú pháp: $số_phần_tử = count($tên_mảng); • Ví dụ: 10 Thiết kế lập trình Web Tìm kiếm mảng: array_search() Ví dụ: 52 Thiết kế lập trình Web Ghép mảng: array_merge() Ghép hai hay nhiều mảng với Kết trả mảng tạo từ mảng Cú pháp: $mảng_ghép = array_merge($mảng_1, $mảng_2, ); Chú ý: mảng dùng để ghép có khóa trùng mảng ghép lấy phần tử có khóa trùng mảng cuối 53 Thiết kế lập trình Web Ghép mảng: array_merge() Ví dụ: 54 Thiết kế lập trình Web Đếm số lần xuất hiện: array_count_values() Đếm số lần xuất phần tử mảng Kết trả mảng đó: – khóa phần tử mảng phần tử mảng cần đếm – giá trị phần tử mảng số lần xuất mảng cần đếm Cú pháp: $mảng_slxh = array_count_values($tên_mảng); 55 Thiết kế lập trình Web Đếm số lần xuất hiện: array_count_values() Ví dụ: 56 Thiết kế lập trình Web Tạo mảng nhất: array_unique() Hàm bỏ giá trị lặp lại mảng Kết trả mảng mà phần tử mảng xuất lần Cú pháp: $mảng_duy_nhất = array_unique($tên_mảng); 57 Thiết kế lập trình Web Tạo mảng nhất: array_unique() Ví dụ: 58 Thiết kế lập trình Web Tìm giá trị khác mảng so với mảng khác: array_diff() So sánh hai mảng lọc phần tử có mảng thứ mà khơng có mảng thứ hai Kết trả mảng với phần tử xuất mảng Cú pháp: array_diff($tên_mảng_1, $tên_mảng_2); 59 Thiết kế lập trình Web Tìm giá trị khác mảng so với mảng khác: array_diff() Ví dụ: 60 Thiết kế lập trình Web Quizes –Hãy cho biết kết thực đoạn script PHP sau đây? 61 Thiết kế lập trình Web Quizes – Trang “testscript.php” xây dựng sau, cho biết người dùng truy nhập với địa truy nhập trình duyệt “http://localhost/testscript.php?c=25” kết thu gì? 62 Thiết kế lập trình Web Bài tập Xây dựng đoạn mã PHP thực hiện: 63 Thiết kế lập trình Web Quizes –Hãy cho biết kết thực đoạn script PHP sau đây? 64 Thiết kế lập trình Web Quizes –Hãy cho biết kết thực đoạn script PHP sau đây? 65 Thiết kế lập trình Web Quizes 66 –Hãy cho biết kết thực đoạn script PHP sau đây? ... $mang_2[0][1]; → “Một” ?> 23 Thiết kế lập trình Web Mảng hai chiều Thao tác mảng hai chiều – Đếm số dòng mảng count() • Cần phải biết số dòng mảng thao tác duyệt mảng hai chiều duyệt dòng mảng, dòng lại... $array[$array[$i]]; } echo $sum; ?> 32 Thiết kế lập trình Web Sắp xếp mảng 33 Thiết kế lập trình Web Sắp xếp mảng chiều Sắp xếp mảng có khóa mặc định (người dùng khơng thiết lập giá trị cho khố): dùng... khác Ví dụ: – số nguyên => mảng có phần tử – Danh sách học sinh => mảng thông tin học sinh Thiết kế lập trình Web Khai báo sử dụng mảng Thiết kế lập trình Web Mảng chiều Khai báo khởi tạo