In ra các số chẵn trong mảng php

Trong bài tập này chúng ta sẽ viết chương trình in ra các số chẵn trong mảng bằng Python, bằng cách sử dụng vòng lặp và lệnh if else trong Python để tìm số chẵn.

Ứng dụng yêu cầu người dùng thêm phần tử cho mảng cho tới khi họ nhập vào "exit", sau đó xuất ra các số chẵn mà người dùng đã nhập đó.

Bài giải

-------------------- ######## --------------------

Bài này khá đơn giản, ta sử dụng toán tử chia lấy % để kiểm tra, nếu kết quả khác 0 là số lẻ, bằng 0 là số chẵn.

Để cho phép người dùng nhập các phần tử không giới hạn thì ta phải sử dụng vòng lặp while, và điều kiện để thoát vòng lặp while là giá trị nhập vào là "exit".

Bạn cũng nên yêu kiểm tra thêm điều kiện bắt buộc người dùng nhập vào là số nguyên nhé, như vậy chương trình sẽ trở nên chuyên nghiệp hơn.

Nếu bạn làm cái gì đó độ 1000 lần trong ngày bạn sẽ chán ngấy và khả năng sai sót rất cao (trừ việc thở). Máy móc thì không như vậy, trong các dây chuyển đóng chai, một thiết bị lặp đi lặp lại công việc của nó vài nghìn lần mỗi tiếng theo cách không thể chính xác hơn. Vâng đó là điểm mạnh của máy. 

Trong bài viết này chúng ta sẽ nói về cách làm thế nào để thực hiện vòng lặp trong PHP, tức là chỉ định nó lặp lại một việc gì đấy mà chúng ta muốn.


Vòng lặp for

Cú pháp:

for (biến đếm; biến kiểm tra; giá trị tăng của biến) {
đoạn code thực thi;
}

Ví dụ:

";
for ($x = 0; $x <= 20; $x+=2) {
echo "$x 
"; } ?>

Biến đếm bắt đầu từ 0, kết thúc tại 20, với bước nhảy là 2, vì vậy nó sẽ lần lượt in ra các giá trị: 0, 2 , 4, 6, 8,…, cho đến giá trị cuối cùng là 20.

Thông thường bước nhảy không phải là 2, mà là 1, chẳng hạn khi tôi muốn in ra danh sách tên học sinh của một lớp học.


Vòng lặp foreach

Vòng lặp foreach chỉ dùng cho mảng trong php, nó dùng để lặp lại cặp khóa / giá trị trong mảng.

Cú pháp:

foreach ($mang as $gia_tri) {
code thực thi;
}

Đối với mỗi lần lặp, giá trị của các phần tử mảng hiện tại được gán cho $gia_tri và con trỏ mảng được di chuyển tăng một, việc đó được lặp lại cho đến khi nó đạt đến các phần tử mảng cuối cùng. Ví dụ sau đây chứng minh vòng lặp sẽ đưa ra các giá trị của mảng cho trước ($màu):

Chúng ta hãy giả sử rằng chúng ta có một nhóm người và chúng ta muốn phân định giới tính của mỗi người theo tên của họ.

Chúng ta có thể sử dụng một mảng kết hợp.

Đoạn code dưới đây giúp chúng ta làm điều đó:


$sinhVien = array("Hải" => "Nam", "Doanh" => "Nam", "Nhung" => "Nữ");


Bạn có thể thấy, thay vì đánh chỉ số từ 0, 1, 2, 3 thì chúng ta sử dụng n0 là:

Kết quả chúng ta nhận được ở ví dụ trên là:


Và khi thực hiện câu lệnh: n1 thì chúng ta nhận được kết quả:


$sinhVien = array("Hải" => "Nam", "Doanh" => "Nam", "Nhung" => "Nữ");

echo "Hải là " . $sinhVien["Hải"];



Mảng kết hợp này rất hữu ích khi bạn lấy dữ liệu từ cơ sở dữ liệu.

Bởi vì tên trường thường không đánh theo chỉ số 1, 2, 3, 4 mà được đánh theo ID (Ví dụ: SV001, SV003, SP001....)

4. Mảng đa chiều trong PHP


Mảng đa chiều là các mảng có chứa các mảng lồng nhau khác.

Ưu điểm của mảng đa chiều là chúng cho phép chúng ta nhóm các dữ liệu liên quan lại với nhau trong khi vẫn chia tách được rõ ràng các nhóm nhỏ hơn.

Hãy xem xét một ví dụ thực tế triển khai mảng đa chiều trong php.

Bảng dưới đây cho thấy một danh sách các bộ phim theo thể loại phim:


// Khai báo mảng đa chiều

  "Hành động" => array("Jonh Wick", "Người vận chuyển", "Nhiệm vụ bất khả thi"),

  "Viễn tưởng" => array("Endgame", "Infinity War"),

  "Lãng mạn" => array("La La land"),

  "Kịch tính" => array("Tên trộm và cô chủ nhà")



Bạn có thể thấy các thể loại phim:

  • Hành động
  • Viễn tưởng
  • Lãng mạn
  • Kịch tính

Mà trong mỗi thể loại phim ta lại có từ 1 đến 2 bộ phim khác nhau.

Kết quả chúng ta nhận được sẽ là:

Một cách khác để khai báo cùng một mảng đa chiều là như sau:

                "Hành động" => array(0 => "Jonh Wick", 1 => "Người vận chuyển", 2 => "Nhiệm vụ bất khả thi"),

                "Viễn tưởng" => array(0 => "Endgame", 1 => "Infinity War"),

                "Lãng mạn" => array (0 => "La La Land"),

                "Kịch tính" => array(0 => "Tên trộm và cô chủ nhà")

// Truy cập phần tử mảng đa chiều

echo $phims["Hành động"][0];


Lưu ý: Mảng chứa số phim cùng 1 thể loại đã được lồng bên trong mảng kết hợp các thể loại

5. Sử dụng toán tử thao tác với mảng trong PHP

Toán tử "+" để cộng 2 mảng trong PHP

Ta sử dụng toán tử "n2" để kết hợp các phần tử từ cả hai mảng:

Ví dụ kết hợp phần tử của 2 mảng như sau:

Sau khi cộng hai mảng ta nhận được một mảng mới như sau:

So sánh 2 mảng có bằng nhau không bằng toán tử "==" trong PHP

Toán tử n3 so sánh hai mảng nếu chúng bằng nhau và trả về n4 hoặc n5 nếu đúng:

Sử dụng toán tử "===" để so sáng 2 mảng trong PHP

Toán tử "n6" sẽ so sánh cả giá trị và kiểu dữ liệu trong 2 mảng được đem ra so sánh:

Sử dụng toán tử "!=" và "<>" để so sánh mảng trong PHP

Ở trường hợp này nếu muốn biết 2 mảng có khác nhau hay không thì chúng ta có thể sử dụng toán tử n7 hoặc n8.

// Kết quả trả về là False hoặc 0


So sánh 2 mảng không giống nhau bằng toán tử "!==" trong PHP

Trường hợp này thường xảy ra khi so sánh mảng có 2 mảng giống nhau về giá trị, nhưng khác kiểu dữ liệu.

Ví dụ:

6. Tìm hiểu về Array Functions trong PHP

Hàm count: Đếm số lượng phần tử trong mảng PHP

Để đếm số phần tử trong một mảng trong PHP ta sử dụng hàm n9, như ví dụ sau:

$phims = array("Jonh Wick", "Người vận chuyển", "Nhiệm vụ bất khả thi");

// Xuất ra số lượng phần tử trong mảng $phims


Sử dụng Hàm is_array để kiểm tra liệu đây có phải một mảng trong PHP

Muốn biết một biến trong PHP có phải là một mảng hay không. Chúng ta sẽ sử dụng hàm giaTri0.

Hãy xem ví dụ sau để biết cách thực hiện:


// Khai báo 1 mảng $phims để sử dụng

$phims = array("Jonh Wick", "Người vận chuyển", "Nhiệm vụ bất khả thi");

// Xuất thông báo xem biến $phims có phải 1 mảng hay không

// Kết quả sẽ là 1 (true)


Cách sử dụng Hàm sort trong PHP

  • Hàm này được sử dụng để sắp xếp các mảng theo các giá trị chứa trong mảng.
  • Nếu các giá trị là chữ và số, nó sắp xếp chúng theo thứ tự bảng chữ cái.
  • Nếu các giá trị là số, nó sắp xếp chúng theo thứ tự tăng dần.
  • Nó loại bỏ các khóa truy cập hiện có và thêm các phím số mới.
  • Đầu ra của hàm này là một mảng chỉ số


// Khai báo mảng $sinhVien

$sinhVien = array("Hải" => "Nam", "Doanh" => "Nam", "Nhung" => "Nữ");

// Sắp xếp các giá trị trong mảng $sinhVien

// In ra mảng $sinhVien để kiểm tra


Kết quả chúng ta nhận được khi sử dụng hàm sort để sắp xếp mảng giaTri1 sẽ là:

Bạn có thể thấy, mảng giaTri1 đã bị thay đổi từ mảng kết hợp thành mảng chỉ số.

Vậy nếu bạn chỉ muốn sắp xếp, giữ nguyên kiểu mảng thì sao?

Hãy..

Sử dụng Hàm ksort để sắp xếp mảng trong PHP

Hàm giaTri3 được sử dụng để sắp xếp mảng sử dụng giaTri4.

Ví dụ sau minh họa cách sử dụng của hàm giaTri3:


// Khai báo mảng $sinhVien

$sinhVien = array("Hải" => "Nam", "Doanh" => "Nam", "Nhung" => "Nữ");

// Sử dụng hàm ksort để sắp xếp mảng $sinhVien


Kết quả chúng ta nhận được là:

Bạn thấy đấy, mảng giaTri6 sau khi sử dụng hàm giaTri3 để sắp xếp theo giaTri4 và vẫn ở kiểu mảng kết hợp.

Sử dụng Hàm asort để sắp xếp mảng trong PHP

Hàm asort() được sử dụng để sắp xếp mảng bằng các giá trị.

Ví dụ sau minh họa cách sử dụng của hàm giaTri9.


// Khai báo mảng $sinhVien

$sinhVien = array("Hải" => "Nam", "Doanh" => "Nam", "Nhung" => "Nữ");

// Sử dụng asort để sắp xếp mảng theo value



Kết quả nhận được sau khi sử dụng hàm giaTri9 để sắp xếp mảng giaTri1:

Cách sử dụng các hàm có sẵn để sắp xếp mảng trong PHP cũng rất đơn giản và dễ hiểu phải không nào?

7. Tại sao nên sử dụng mảng để chứa dữ liệu?


Trong trường hợp cần thiết, chúng ta nên sử dụng mảng để chứa dữ liệu vì 3 lý do sau đây:

  • Nội dung của Mảng có thể được kéo dài mà vẫn tiết kiệm bộ nhớ
  • Mảng giúp dễ dàng lưu trữ và thao tác với các thông tin có liên quan đến nhau
  • Sử dụng mảng giúp viết code sạch hơn.

8. Tổng kết bài học Mảng (Array) trong PHP


Như vậy là qua bài cách sử dụng mảng trong PHP này bạn đã được học và hiểu về:

  • Mảng trong PHP là các biến đặc biệt với khả năng lưu trữ nhiều giá trị.
  • Mảng linh hoạt và có thể dễ dàng kéo dài để chứa nhiều giá trị hơn
  • Hàm count được sử dụng để đếm số lượng giá trị đã lưu trong mảng.
  • Hàm is_array được sử dụng để xác định xem một biến có phải là một mảng hợp lệ hay không.
  • Các hàm mảng khác bao gồm sort, ksort, Assort, v.v.

Đó là kiến thức cơ bản về mảng trong PHP để bạn có thể sử dụng để thực hiện các công việc có liên quan đến mảng.


> Bạn cũng sẽ được học cách ứng dụng mảng trong lập trình web thực tế ở KHÓA HỌC LẬP TRÌNH WEB VỚI PHP. Đăng ký ngay để nhận hỗ trợ học phí từ doanh nghiệp!

---

HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI

Học Lập trình chất lượng cao (Since 2002). Học thực tế + Tuyển dụng ngay!

Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội

SĐT: 02435574074 - 0968051561

Email: [email protected]

Fanpage: https://facebook.com/NIIT.ICT/

#niit #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp #java #php #python