Sử dụng template trong PHP – cơ bản


Bài viết này giới thiệu về cách dùng file .tpl. Đối với những ứng dụng viết cho nhiều người sử dụng ( cụ thể là những web cần chỉnh sửa giao diện nhiều: forum phpbb).
Với cách viết thông thường, mỗi lần thay đổi giao diện bạn sẽ fải edit tòan bộ code, như vậy xác suất dẫn đến lỗi code rất cao chưa kể đến người edit giao diện cần fải có hiểu biết về php mới sữa được. Nên đối với những ứng dụng này bạn nên viết theo kiểu template. Template là những file tạo giao diện cho website và thường độc lập vơi code. định dạng file thường dùng trong template là .tpl ( kô bắt buộc, bạn có thể chọn đuôi khác miễn sao bạn thấy dễ dàng sử dụng là được). Khi đó cứ mỗi lần bạn thay đổi giao dịên chỉ cần edit lại các file .tpl là xong và vì nó ko chứa các mã PHP nên bạn kô cần fải là người rành về php mới edit được như vậy ứng dụgn của bạn sẽ được phổ biến rộng hơn.
Để dễ hiểu tôi sẽ tạo một ví dụ sử dụgn template đơn giản để dễ hiểu:

Ví dụ:
Bạn có một trang web in các ngày hiện hành:

file calender.php có nội dung như sau:

<?

$ngay = $_GET['date'];
print
"Hôm nay là ngày:".$ngay;
?>

Khi gọi calender.php?date=04-09-2006 thì kết quả sẽ là :
Hôm nay ngày: 04-09-2006
Đây là cách viết thông thường, giả sử bây giờ bạn muôn thêm câu "Welcome to phpbasic.com" fía dười dòng "Hôm nay ngày 04-09-2006"
Bạn sẽ edit lại file calender.php như sau:

<?
// kết nối csdl
$ngay = $_GET['date'];
print
"Hôm nay là ngày:".$ngay;
print
"Welcome to phpbasic.com";
?>
hoặc là
<?
// kết nối csdl
$ngay = $_GET['date'];
print
"Hôm nay là ngày:".$ngay;
?>
Welcome to phpbasic.com

Ở đây chỉ có một dòng code nên bạn dễ dàng edit , bạn thữ nghĩ nếu nó là một ứng dụng thì bạn sẽ tìm chỗ để thêm câu đó vào cũng là một vấn đề chưa kể xác suất gây ra lỗi rất cao và càng khó khăn hơn cho những ngừơi kô rành về php.

Để giải quyết bạn viết theo kiểu template như sau:
tạo 2 file riêng rẽ, một file code .php và một file giao diện .tpl

tạo file giao dien template.tpl như sau:
<html>
<body>
Hôm nay là ngày: $ngay
Welcome to phpbasic.com
</body>
</html>

file code calender.php có nội dung như sau:
<?
$ngay
= $_GET['date'];
$file = file_get_contents("template.tpl"); //đọc nội dung file .tpl
print str_replace('$ngay',$date,$file); // tìm và thay thế chữ $ngay trong file .tpl bằng biến $ngay trong file calender.php
?>

Kết quả của file calender.php này khi view trên trình duyệt cũng giống như là dùng kiểu bình thường , nhưng bây giờ bạn muốn edit lại giao diện bạn chỉ cần sữa lại file .tpl và chỉ cần giữ lại chữ $ngay là được, như vậy một người kô biết về code cũng có thể edit được nội giao diện của ứng dụng.

Đây là ví dụ đơn giản, hi vọng giúp bạn hiểu fần nào về .tpl

Theo phpbasic

Advertisements

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