ThinkPHP5.1ラーニング--コントローラ定義
一.コントローラ定義コントローラ、すなわちcontrollerであり、コントローラファイルはcontrollerディレクトリの下に格納される. クラス名とファイル名の大文字と小文字は一致し、アルパカ式(頭文字大文字)を採用している.use think\Controller; class Index extends Controller はコントローラのベースクラスを継承し、機能をより便利に使用することができるが、必要ではない. システムは、継承せずに同じ機能を完了する他の方法も提供している. の前に、class Indexのような単語であれば、頭文字が大文字であることを知っています. URLアクセス時に直接public/indexでよい. では、class HelloWorldなどの2文字の組み合わせが作成された場合. URLアクセス時:public/hello_world; URLにそのままアクセスしたい場合は、プロファイルの自動変換を閉じる必要があります.url_convert’ => false, この場合、URLアクセスはpublic/HelloWorld; ルートネーミングスペースappを他のものに変更したい場合は、ルートディレクトリの下で作成できます.Envファイル; 次にペアのキー値ペアを書けばいい、app_namespace=application;
二.レンダリング出力 ThinkPHPは直接方法内のreturnが戻る方式で直接出力した. はjson出力を使用し、直接json関数を採用する. view出力テンプレートを使用して、エラープロンプトを開き、テンプレートの作成方法を知ることができます.return view(); デフォルト出力方式はhtml形式で出力され、配列が返されるとエラーが発生します. は、プロファイル内のデフォルトの出力タイプを変更し、jsonに変更することができます. 一般的に、通常のページはhtml出力で、テンプレートに使用され、AJAXのデフォルトはjsonです. ベースクラスコントローラが継承されている場合、コントローラ初期化方法:initialize()を定義できます. initialize()メソッドは、コントローラメソッドを呼び出す前に実行されます. initialize()メソッドは戻り値を必要とせず、出力用PHP
二.レンダリング出力
$data = array('a'=>1, 'b'=>2, 'c'=>3);
return json($data);
return ['user'=>'Lee', 'age'=>100];
'default_return_type' => 'json',
protected function initialize()
{
//parent::initialize();
echo 'init';
}