1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Lập trình viên mã nguồn mở (Module 1) - Bài 3: Xây dựng phương thức (hàm) và xử lý lỗi

15 60 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 15
Dung lượng 1,25 MB

Nội dung

Bài giảng Lập trình viên mã nguồn mở (Module 1) - Bài 3: Xây dựng phương thức (hàm) và xử lý lỗi trình bày các nội dung chính sau: Phương thức hàm, xây dựng phương thức hàm, xử lý lỗi. Mời các bạn cùng tham khảo để nắm nội dung chi tiết bài giảng.

Trang 1

Trường ĐH Khoa Học Tự Nhiên Tp Hồ Chí Minh TRUNG TÂM TIN HỌC

LTV MÃ NGUÒN MỞ PHP

Module 1 - Bài 3: Xây dựng phương thức (hàm) và xử lý lỗi Ngành LT & CSDL (3h.vn Cong GUC MediaFire

Trang 2

Lap trinh vién mad nguén mo PHP — Module 1

Noi dung

1 Phwong thức (hàm)

2 Xây dựng phương thức (ham)

3 Xử lý lỗi LTV Mã nguồn mở PHP - Module 1 Phương thức (hàm) Khái niệm @ ©) Xây dựng phương thức Thực hiện (hàm) cùng một nghiệp vụ trong thực tế nhiều lần Pp ^ nhiêu lân TÀI ©; [TH LTV Ma nguon mo PHP — Module 1 ¬

Function là một đoạn code đặc biệt được viết đề thực hiện một công việc nào đó thường được lặp đi lặp lại Phương thức

(hàm) -

function

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 23

Cong GUC

Trang 3

sss, Phương thức (hàm) esos O Phan loai

e Built-in function: ham do PHP cung cấp Có trên

700 hàm chia thành nhiều nhóm: chuỗi, tốn học,

thời gian, lịch, mảng, tập tin, mail, xử lý CSDL chỉ

cần gọi hàm khi sử dụng và truyền vào các giá trị

phù hợp dựa trên danh sách các tham số

“ Ví dụ: $SO = 121.1542; round($so,2); — 121.15 round ($so,-1); — 120 đate("3/m/Y"); — 15/01/2014 ĐÓ LTV Ma nguồn mở PHP - Module 1 4 th Phương thức (hàm) esos UPhan loai

e User defined function: ham do nguo’ dung

tu dinh nghia

“ Ví dụ:

// ax + b =0

snghiem = Giai phuong trinh bac I(2, 4);

àứ LTV Mã nguồn mở PHP - Module 1 5

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 24

Cong GUC

Trang 4

Lap trinh vién mad nguén mo PHP — Module 1 Noi dung 4 Phương thức (ham) 2 Xây dựng phương thức (hàm) 3 Xử lý lỗi H LTV Ma nguén ma PHP — Module 1 Xây dựng phương thức (hàm) Khai báo £unction

Tên hàm(Danh sách các tham số) {

khối lệnh bên trong hàm

return giá trị;

LTV Mã nguồn mở PHP - Module 1

e Trong đó:

Tên hàm: được sử dụng khi gọi hàm, tên hàm nên

có ý nghĩa gợi nhớ

- Danh sách các tham số:

dùng đề truyền dữ liệu bên ngồi vào, hàm có thế có hoặc khơng có tham số - Giá trị: là kết quả trả về

của hàm Hàm có thê có

hoặc khơng có giá trị trả

về

7

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 25

Cong GIIC

Trang 5

Xây dựng phương thức (hàm)

eV⁄í dụ: Xây dựng hàm tính điện tích hình chữ nhật

function Tinh S hcn($a, $b) { $S = $a * $b; return $S; f LTV Mã nguồn mở PHP - Module 1 Sứ LTV Mã nguồn mở PHP - Module 1 8 eee eeoeo eecen ~ + ` cece

Xây dựng phương thức (hàm) ese

USu dung

Tên hàm(Danh sách các giá trị)

e [rong đó:

- Tên hàm gọi sử dụng phải giống tên hàm đã xây dựng

= Danh sách các giá trị: cung cấp các thông tin cho tham số

của hàm Với:

- Số lượng các giá trị bằng số lượng các tham số của hàm - Thứ tự tương ứng theo thứ tự các tham số

- Kiểu dữ liệu của giá trị phải tương ứng với kiểu của tham số

- Nếu hàm khơng có giá trị truyền vào thì phía sau tên hàm cũng phải có

cặp ()

¢

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 26

Cong GIIC

Trang 6

Lap trinh vién mad nguén mo PHP — Module 1

Xây dựng phương thức (hàm)

eVí dụ: gọi sử dụng hàm tính diện tích hình chữ nhật $s = Tỉnh S hcn(4, 8); | | @ LTV Mã nguõn mở PHP - Module 1 ; 10 Xây dựng phương thức (hàm)

Phân loại tham số của hàm

eCó 2 loại:

» Tham trị: truyền tham số theo giá trị " Tham biến: truyền tham số theo địa chỉ

| |

@ LTV Mã nguồn mở PHP - Module 1 11

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 27

Cong GUC

Trang 7

sess°

Xây dựng phương thức (hàm) ose:

OTham tri

e Tham số truyền giá trị từ bên ngoài vào cho hàm

e Khi thay đổi giá trị của tham trị bên trong

hàm thì giá trị của nó ở ngồi hàm vẫn khơng bị thay đổi

ie LTV Ma nguén ma PHP — Module 1 12

th

Xây dựng phương thức (hàm) esos

e\V/i du

function them_vao_chuoi ($chuoi)

{

$chuoi = "và chuỗi sau khi thêm ";

return $chuoi;

}

$chuoi goc= "Đây là chuỗi gốc, ";

echo them vao chuoi ($chuoi goc); // "Đây là chuỗi gốc, và chuỗi sau khi thém.«

echo $chuoi goc ; // "Đây là chuỗi gốc, "

bd LTV Mã nguồn mở PHP - Module 1 13

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 28

Cong GUC

Trang 8

Lap trinh vién mad nguén mo PHP — Module 1 Xây dựng phương thức (hàm) đc Tham biến

e Tham số truyền giá trị từ bên ngoài cho hàm

và trả giá trị ở trong hàm ra bên ngoài

e Khi thay đổi giá trị của tham biến bên trong hàm thì giá trị của nó ở ngoài hàm cũng sẽ thay đổi sau khi chúng ta gọi hàm đã xây dựng

eĐối với tham biến chúng ta sẽ sử dụng cú

pháp với ký tự & ° pie moe :

Xây dựng phương thức (hàm) đc

eCú pháp:

function Tên hàm(&Tên tham biến, .)

{

Tên tham biến = giá tri;

return ;

LTV Mã nguồn mở PHP - Module 1 15

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 29

Cong GUC

Trang 9

Xây dựng phương thức (hàm) ss:

eVí du:

function them _vao_chuoi (&$chuoi)

{

$chuoi = "và chuỗi sau khi thêm ";

return Schuoi;

}

$chuoi goc= "Đây là chuỗi gốc, ";

echo them_vao_chuoi($chuoi_goc); // "Day 1a chuỗi

gôc, và chuôi sau khi thêm "

echo $chuoi_goc;

// "Đây là chuỗi gốc, và chuỗi sau khi thêm."

2 LTV Ma nguén ma PHP — Module 1 16 Xây dựng phương thức (hàm) ss: Tham số tùy chọn

eLà những tham số có thê được truyền giá tri

hoặc không

eCho phép tạo sẵn các giá trị mặc định cho

tham số

e Những tham số này chỉ xuất hiện ở cuối danh sách các tham sô

74 Cong GUC

TH LTV Mã nguồn mở PHP - Module 1 17 MediaFire

Trang 10

Lap trinh vién mad nguén mo PHP — Module 1 eeoeo eecen ˆ „ ees°

Xây dựng phương thức (hàm) ese

eCu phap

function Tén_ham(Danh sach cac tham tri, tham

biên, $tham số tùy chọn=giá trị) {

khối lệnh bên trong hàm return giá trị; } Sứ LTV Mã nguồn mở PHP - Module 1 18 eee eeoeo eecen ˆ „ ees°

Xây dựng phương thức (hàm) ese

eVí dụ

function so_thich($nuoc_uong = "ca phé")

{

return "T6i thich uéng $nuoc_uong.";

}

echo so thich(); // "Tơi thích uống cà phê."

echo so thich("nước ép trái cây"); // "Tơi thích uống nước ép trái cây."

Sứ LTV Mã nguồn mở PHP - Module 1 19

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 31

Cong GIIC

Trang 11

eee eeee eeoen ôi HH Nội dung 332 4 Phương thức (hàm) 2 Xây dựng phương thức (hàm) 3 Xử lý lỗi LTV Mã nguồn mở PHP - Module 1 20 eee eeee eeoen ? lý lỗi 333 Xử ly loi ese ˆ = pare

UO) Phan loai loi

e Lỗi cú pháp (syntax error)

e Lỗi thực thi

e Lỗi luận lý

LTV Mã nguồn mở PHP - Module 1 21

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 32

Cong GUC

Trang 12

Lap trinh vién mad nguén mo PHP — Module 1 đc: Xử lý lỗi 333° eLỗi cú pháp

= Xuat hiện khi ta viết code

= )ược thông báo khi ta thực thi trang

* Nguyên nhân: Viết sai hoặc thiếu cú pháp

=“ Ví dụ: Một số lỗi sai thường gặp

- Tên biến có chứa khoảng trắng

- Thiếu ; cuối lệnh

- Sai do PHP có phân biệt ký tự thường và hoa

„ Chuỗi không bắt đầu và kết thúc bởi cặp nháy don ” hoặc nháy đôi “"

i LTV Mã nguồn mở PHP - Module 1 22

đc:

Xử lý lỗi 333°

eLỗi thực thi

= Xay ra khi ta thực thi trang

= Kho xac định hơn lỗi cú pháp

“ Nguyên nhân: Mở một tập tin đang tồn tại, chia

cho 0, truy xuất bảng không tôn tại trong CSDL

© LTV Mã nguồn mở PHP - Module 1 23

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 33

Cong GIIC

Trang 13

th Xử lý lỗi 333° eLỗi luận lý

= Xay ra khi ta thực thi trang

“ Được thê hiện dưới những hình thức hoặc những

kết quả không mong đợi

“ Nguyên nhân: Sai lầm trong thuật giải

i LTV Mã nguồn mở PHP - Module 1 24

th

Xử lý lỗi 333°

Sửa lôi

e Sửa lỗi thủ công

e Dùng try catch đề bắt lỗi

De LTV Mã nguồn mở PHP - Module 1 25

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 34

Cong GUC

Trang 14

Lap trinh vién mad nguén mo PHP — Module 1 eeoeo | Xử lý lỗi 333°

e Sủa lỗi thủ công

" Khi chạy chương trình, nếu có lỗi phát sinh thi

trang thực thi sẽ tự động thông báo lỗi „ Cách sửa lỗi:

- Xem thông báo lỗi và dòng xảy ra lỗi

- Mở code và sửa lỗi tại dịng đó (hoặc những dòng lân

cận) Sứ LTV Mã nguồn mở PHP - Module 1 26 eee eeoeo eecen > z Kae oooe Xw ly loi 33° e Dùng try catch dé bat léi

= Cho phép thử thực hiện một khói lệnh xem có bị

lỗi hay không, néu co sé bay và xử lý lỗi Cấu trúc có hai khối:

- Khối try: các câu lệnh có khả năng gây ra lỗi

- Khối catch: các câu lệnh để bẫy và xử lý lỗi phát sinh

trên khối try

“ Một lỗi xảy ra khi thực thi trang gọi là một

Exception

« Néu dong nao trong khối lệnh có kha nang tạo ra lỗi thì gọi trả về lỗi đó

© LTV Mã nguồn mở PHP - Module 1 27

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 35

Cong GC

Trang 15

eeoeo eeoen > z Ks ee°© Xw ly loi 33° ` R J x

e Dùng try catch đê bắt lôi

= Trong PHP lỗi sẽ không tự động trả về => gọi lỗi

đó bằng cú pháp sau:

throw new Exception("Câu thông báo lỗi",

code) ;

«Voi câu thơng báo lỗi và mã lỗi (code) đều là các tham số tùy chọn

“Lưu ý:

- Một khối try có thể dùng một hay nhiều khối catch

- Mỗi khối catch hiển thị một loại lỗi khác nhau

LTV Mã nguồn mở PHP - Module 1 28 eee eeoeo eeoen > z x ee°© Xw ly loi 33° eCu phap try { ~

- kh6i lệnh có khả năng phát sinh lỗi

- các lỗi

throw new Exception("Câu thông báo lỗi", code) ;

}

catch (Exception Se)

{

echo "<p>L6i: " $e->getMessage () "</p>";

//xuat 16i }

LTV Mã nguồn mở PHP - Module 1 29

Bản quyền © Trung Tâm Tin Học - Đại Học Khoa Học Tự Nhiên | Xuất bản bởi ®Cơng GMC Trang 36

Cong GIIC

Ngày đăng: 11/01/2020, 18:35

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN