在 PHP 中使用 FreeMarker 作為模板引擎時,可以通過以下步驟處理數(shù)據(jù):
require_once 'vendor/autoload.php';
$freeMarker = new FreeMarker();
$data = [
'title' => 'FreeMarker 示例',
'items' => [
['name' => 'Item 1', 'price' => 100],
['name' => 'Item 2', 'price' => 200],
['name' => 'Item 3', 'price' => 300],
],
];
template.ftl
):<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{title}}</title>
</head>
<body>
<h1>{{title}}</h1>
<ul>
<#list items as item>
<li>{{item.name}} - ${{item.price}}</li>
</#list>
</ul>
</body>
</html>
在這個模板中,我們使用了 FreeMarker 的內(nèi)置變量(如 {{title}}
和 {{items}}
)以及內(nèi)置的列表處理指令(如 <#list>
和 <#list>
)。
$template = file_get_contents('template.ftl');
$output = $freeMarker->render($template, $data);
echo $output;
這將輸出渲染后的 HTML 頁面,其中包含從 PHP 數(shù)據(jù)中提取的信息。
總結(jié)一下,處理數(shù)據(jù)的關(guān)鍵在于準備要傳遞給模板的數(shù)據(jù),并確保模板文件中的語法和變量與 FreeMarker 的要求相匹配。