私はphpからhtmlを分離したいので、テンプレートフォルダから拡張子が.htmlのテンプレートを呼び出すこの機能を持っています
わかりました、これはテンプレートを呼び出すための私の関数です
class Template {
public $temp;
// function for reading the template from a directory
function gettemplate($template) {
// check if path is folder
if (is_dir('templates/')) {
// check if file exists and if is readable
if (is_readable('templates/' . $template . '.html')) {
$this->temp = 'templates/' . $template . '.html';
return $this->temp;
} else {
return false;
}
} else {
return false;
}
}
このクラスは、テンプレート フォルダーからテンプレートを呼び出します
今私が必要としているのは、例の profile.html と profile.php を作成することです
profile.html で First name のような変数を作成するだけです:<?php echo $first_name; ?>
そして、ここで変数を定義するための profile.php は profile.php です
if (isset($_GET['id']) && !empty($_GET['id']) && is_numeric($_GET['id'])) {
$id = $filters->validate_url($_GET['id']);
$data = $users->userdata($id);
$id = $data['user_id'];
$first_name = $data['first_name'];
$last_name = $data['last_name'];
$username = $data['username'];
$email = $data['email'];
$country = $data['country'];
$date = $data['date'];
include ( $template->gettemplate('profile') );
ここに profile.html があります
<ul>
<li>First name : <?php echo $first_name; ?></li>
<li>Last name : <?php echo $last_name; ?></li>
<li>Username : <?php echo $username; ?></li>
<li>Email : <?php echo $email; ?></li>
<li>Country : <?php echo $country; ?></li>
<li>Member since : <?php echo $date; ?></li>
今私の質問は、テンプレートファイルを呼び出すクラスを作成する方法です
$template->gettemplate('profile');
とではなくinclude ($template->gettemplate('profile'));
phpファイルの変数をhtmlファイルに表示する