Chuong XXXI : Tận dụng mã nguồn có sẵn bằng cách include file

Tận dụng mã nguồn có sẵn bằng cách include file

 

Sau khi đọc xong bài Sử dụng hàm trong PHP, bạn sẽ có trong tay rất nhiều hàm cần thiết khi code. Số lượng hàm này chắc chắn sẽ tăng dần theo thời gian.

Ví dụ bạn đang viết rất nhiều hàm về tính toán với hình tròn:

PHP Code:

function tinh_dien_tich_hinh_tron($ban_kinh) {
// code
}

function tinh_chu_vi_hinh_tron($ban_kinh) {
// code
}

// rất nhiều hàm khác

Thay vì copy và paste các hàm trên vào tất cả các file dính dáng đến việc tính toán với hình tròn, bạn hãy cho những hàm đó vào 1 file riêng, đặt tên là hinh_tron.php chẳng hạn. Mỗi lần muốn sử dụng các hàm trong file hinh_tron.php đó, bạn chỉ việc include nó vào file hiện tại bằng một trong các cách sau:

1. Dùng include

PHP Code:

include(tên_file);

2. Dùng require

PHP Code:

require(tên_file);

File được include có thể mang định dạng bất kỳ, php, inc, lib… tùy bạn chọn.

Câu hỏi 1: include với require làm gì?

Khi bạn include/require 1 file nào đó, ko cần biết file đó mang định dạng gì, PHP sẽ quét nội dung file đó và bắt đầu xử lý 2 trường hợp:
– Với những đoạn nằm trong thẻ php, PHP sẽ thực thi như với file PHP thông thường
– Với những đoạn nằm ngoài thẻ php, PHP sẽ output ra màn hình

Câu hỏi 2: include khác require ở chỗ nào?

Một file được include nếu (chẳng may) ko tồn tại sẽ khiến PHP báo lỗi, tuy nhiên phần còn lại của script vẫn sẽ được thực thi.
Ngược lại, một file được require nếu (xui xẻo) ko tồn tại sẽ khiến PHP đứng luôn, ko chạy tiếp script. Nói cách khác, file được require là file tối quan trọng, ảnh hưởng tới việc thực thi 1 script.

Ngoài việc sử dụng include và require, bạn còn có thể dùng include_once và require_once. Về cơ bản, include và include_once giống nhau. require và require_once cũng thế.

Điểm khác biệt là khi sử dụng require_once hay include_once, file đó chỉ được include đúng 1 lần duy nhất.

Hãy xét 1 ví dụ: Bạn có 3 script A, B, C. Trong đó A include B, B include C và C include lại A.

Nếu bạn chỉ dùng include() trong cả 3 trường hợp, chắc chắn PHP sẽ báo lỗi. Để tránh trường hợp này, bạn chỉ việc sửa 3 cái include() thành include_once() => Vấn đề được giải quyết!

identical(UDS)

 

  1. Leave a comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: