ThinkPHP は PHP をベースにした MVC フレームワークで、MVC 設計パターンを使用してビジネス ロジックとデータ操作を分離し、開発とメンテナンスを容易にします。 ThinkPHP では、ビューは MVC のビュー層であり、ユーザーにデータを表示するために使用され、コントローラー (Controller) とモデル (Model) から切り離されています。以下では、ビューを呼び出す方法を詳しく學びます。
1. ビューの作成
ThinkPHP では、コントローラー (Controller) を通じてビュー (View) を呼び出すことができますが、ビューを作成する前に、まずコントローラーを作成する必要があります。
コントローラーの作成方法は次のとおりです。
<?php
namespace app\controller;
use think\Controller;
class Index extends Controller{
public function index(){
}
}
コントローラーの機能は、ユーザー リクエストを受信し、ユーザー リクエストを処理し、モデル (Model) とビュー (ビュー)原則として単一の責任を達成します。
次に、コントローラーでビューを呼び出す必要があります。
ThinkPHP では、ビューは /application/view/
ディレクトリに保存され、必要に応じてそのディレクトリ內に新しいフォルダーやファイルを作成できます。たとえば、/application/view/
ディレクトリに新しい index.html
ファイルを作成します。
<!DOCTYPE html>
<html lang="en">
<head>
????<meta charset="UTF-8">
????<title>ThinkPHP調用視圖示例</title>
</head>
<body>
????<h1>歡迎使用ThinkPHP!</h1>
</body>
</html>
コントローラーで、View を呼び出すことができます。
クラスの fetch
メソッドは、ビューのレンダリングに使用されます。
<?php
namespace app\controller;
use think\Controller;
class Index extends Controller{
public function index(){
return $this->fetch('index');
????}
}
上記のコードでは、コントローラーを通じてビューを呼び出しますindex.html
,$this->fetch('index')
ビューの HTML を返しますコード。最終的にはページをレンダリングするために使用されます。
index.html
ファイルを /application/view/index/
ディレクトリに配置すると、次のようにコントローラーでビューを呼び出すことができます:
return?$this->fetch('index/index');
2. ビュー パラメーターの受け渡し
ビューにデータを動的に表示する必要がある場合があります。 ThinkPHP では、パラメーターを渡すことでデータをビューに渡すことができます。
コントローラーでは、assign
メソッドを使用してデータを渡すことができます。
<?php
namespace app\controller;
use think\Controller;
class Index extends Controller{
public function index(){
$name = 'ThinkPHP';
$this->assign('name',$name);
????????return?$this->fetch('index');
????}
}
上記のコードでは、変數 $name
を ThinkPHP
に割り當て、ビューに渡します。
ビューでは、渡されたデータを {$name}
の形式で表示できます。
<!DOCTYPE html>
<html lang="en">
<head>
????<meta charset="UTF-8">
????<title>ThinkPHP調用視圖示例</title>
</head>
<body>
????<h1>歡迎使用{$name}!</h1>
</body>
</html>
3. ビューで POST データを取得する
場合によっては、ビューでフォーム データを送信し、それを処理のためにコントローラーに渡す必要があります。 ThinkPHP では、request
メソッドを通じて POST データにアクセスできます。
ビューでは、フォームを作成し、POST を通じてデータをコントローラーに送信できます。
<form method="post" action="<?php echo url('index/add'); ?>">
????<input type="text" name="username" placeholder="請輸入用戶名">
????<input type="text" name="password" placeholder="請輸入密碼">
????<button type="submit">提交</button>
</form>
コントローラーでは、request
メソッドを通じて POST データを取得できます。
<?php
namespace app\controller;
use think\Controller;
class Index extends Controller{
public function add(){
$username = $this->request->post('username');
????????$password?=?$this->request->post('password');
????????//執(zhí)行具體的業(yè)務邏輯
????}
}
上記のコードでは、$this->request->post()
メソッドを使用して POST データを取得します。
上記のメソッドを通じて、ビューを簡単に呼び出してコントローラーから切り離し、MVC アーキテクチャの目標を達成できます。
以上がthinkPHP がビューを呼び出す方法の詳細な説明の詳細內容です。詳細については、PHP 中國語 Web サイトの他の関連記事を參照してください。