require_once 'xtemplate.class.php';
$xtpl = new XTemplate( 'index.html', '/tempate' );
Với index.html là tên file giao diện, và /template là đường dẫn đến thư mục chứa file giao diện.
$giatri = 1;
$xtpl->assign( 'GIATRI', $giatri );
parse: Chức năng đánh dấu khối
$xtpl->parse( 'main.bodytext' );
XTemplate sử dụng "main" mặc định là tên khối lớn nhất. Khối lớn sẽ bao gồm các khối nhỏ bên trong. Tên khối lớn nhất có thể thay đổi.
<!-- BEGIN: tên khối -->
content
<!-- END: tên khối -->
<?php
// Gán giá trị cho biến
$string = 'Hello world!';
// In giá trị ra màn hình
echo $string;
Sử dụng XTemplate
<?php
// Chèn XTemplate vào dự án
require_once 'xtemplate.class.php';
// Khởi tạo class, liên kết đến file giao diện (example1.html) đặt ở thư mục /template
$xtpl = new XTemplate( 'example1.html', 'template' );
// Gán giá trị cho biến
$string = 'Hello world!';
// Sử dụng assign, gán giá trị cho CONTENT
$xtpl->assign( 'CONTENT', $string );
// Sử dụng parse, khai báo khối chứa nội dung này
$xtpl->parse( 'main' );
// In nội dung khôi main ra màn hình
echo $xtpl->text( 'main' );
Mã HTML. Tạo file /template/example1.html sử dụng nội dung dưới đây:
<!-- BEGIN: main -->
{CONTENT}
<!-- END: main -->
Nhìn ví dụ này thì có vẻ việc nhúng HTML vào PHP làm code ngắn hơn. Nhưng mà không sao, đến trường hợp phức tạp hơn mới thấy ra cái hay của XTemplate.
<?php
echo '<ul>';
for( $i=0; $i<=100; $i++ )
{
echo '<li>' . $i . '</li>';
}
echo '</ul>';
Sử dụng XTemplate
<?php
// Chèn XTemplate vào dự án
require_once 'xtemplate.class.php';
// Khởi tạo class
$xtpl = new XTemplate( 'example2.html', 'template' );
for( $i=0; $i<=100; $i++ )
{
// Sử dụng assign, gán giá trị $i cho NUMBER
$xtpl->assign( 'NUMBER', $i );
// Sử dụng parse để đánh dấu khối chứa giá trị biến $i // Cú pháp: Khối ngoài -> khối con, sử dụng dấu chấm
$xtpl->parse( 'main.loop' );
}
// Sử dụng parse, khai báo khối chứa nội dung này
$xtpl->parse( 'main' );
// In nội dung khôi main ra màn hình
echo $xtpl->text( 'main' );
Mã HTML. Tạo file /template/example2.html sử dụng nội dung dưới đây:
<!-- BEGIN: main -->
<ul>
<!-- BEGIN: loop -->
<li>{NUMBER}</li>
<!-- END: loop -->
</ul>
<!-- END: main -->
Đến đây mình nghĩ các bạn đã phần nào nhìn ra sự khác biệt trong code, khi viết HTML chung với PHP, và sử dụng XTemplate để tách PHP và HTML thành hai tập tin độc lập. Code trên mình viết 6 dòng, hãy tưởng tượng tập tin code của bạn lên đến vài nghìn dòng, thì việc quản lý code sẽ như thế nào?
$array_data = array(
array(
'ID' => 1,
'first_name' => 'Trien',
'last_name' => 'Ho Ngoc'
),
array(
'ID' => 2,
'first_name' => 'Binh',
'last_name' => 'Nguyen Van'
)
);
echo '<table border=1>';
echo ' <tr>';
echo ' <td>ID</td>';
echo ' <td>Tên</td>';
echo ' <td>Họ, tên đệm</td>';
echo ' </tr>';
foreach( $array_data as $array )
{
echo ' <tr>';
echo ' <td>' . $array['ID'] . '</td>';
echo ' <td>' . $array['first_name'] . '</td>';
echo ' <td>' . $array['last_name'] . '</td>';
echo ' </tr>';
}echo '</table>';
Sử dụng XTemplate
<?php
$array_data = array(
array(
'ID' => 1,
'first_name' => 'Trien',
'last_name' => 'Ho Ngoc'
),
array(
'ID' => 2,
'first_name' => 'Binh',
'last_name' => 'Nguyen Van'
)
);
// Chèn XTemplate vào dự án
require_once 'xtemplate.class.php';
// Khởi tạo class
$xtpl = new XTemplate( 'example3.html', 'template' );
foreach( $array_data as $array )
{
// Sử dụng assign, gán giá trị $array cho DATA
$xtpl->assign( 'DATA', $array );
// Sử dụng parse để đánh dấu khối chứa giá trị biến $array
// Cú pháp: Khối ngoài -> khối con, sử dụng dấu chấm
$xtpl->parse( 'main.loop' );
}
// Sử dụng parse, khai báo khối chứa nội dung này
$xtpl->parse( 'main' );
// In nội dung khôi main ra màn hình
echo $xtpl->text( 'main' );
Mã HTML. Tạo file /template/example3.html sử dụng nội dung dưới đây:
<!-- BEGIN: main -->
<table border="1">
<tr>
<td>ID</td><td>Tên</td><td>Họ - tên đệm</td>
</tr>
<!-- BEGIN: loop -->
<tr>
<td>{DATA.ID}</td><td>{DATA.first_name}</td><td>{DATA.last_name}</td>
</tr>
<!-- END: loop -->
</table>
<!-- END: main -->
Code nhìn đẹp hẳn ra đúng không? Nó không phải là một đống bùi nhùi như khi viết chung HTML và PHP. XTemplate rất đơn giản, chỉ cần hiểu được những cú pháp này là bạn đã có thể làm việc với những dự án lớn.Những tin mới hơn
Những tin cũ hơn
Trung tâm ứng dụng NukeViet
Ghi rõ nguồn khi sao chép thông tin từ website này.
Sử dụng CMS NukeViet, thiết kế bởi TDFOSS.,LTD