2019-08-01から1ヶ月間の記事一覧
LaravelからDBを利用してみます。 DBはSQLliteを利用して準備します。
SQLiteについて php5にはSQLiteが同梱されている。 DBサーバーの準備など不要でファイル一つで管理できるので簡単。 私のような初心者には手軽で良いです。 SQLiteの特徴 動作が軽い 著作権がない DBサーバーの起動が必要ない ファイルが1つ パスワードがな…
フォームリクエストを利用したバリデーション Laravelのフォームリクエストという機能を利用することで、コントローラーからバリデーション処理を切り離すことができます。 フォームリクエストを利用すると、リクエスト内部でバリデーション処理を実行してく…
バリデーションを行う フォームのバリデーション処理です。
ミドルウェアとは リクエストがコントローラーのアクションに届く前後に処理をさせることができます。 指定のアドレスにリクエストが送られてきたら、自動的に何らかの処理を行う機能です。
ビューコンポーザーとは ビューのロジックはコントローラーや、テンプレートに書きたくない問題を解決する機能です。 ビューコンポーザーはビューをレンダリングする際に自動的に実行されます。 ビューコンポーザーの処理はコントローラーからは見えません。…
bladeのテンプレートやコンポーネント機能を利用した、レイアウトの組み方のメモです。
{!! 変数、式、関数など !!} 定義した内容がエスケープされないで表示される。 class HogeController extends Controller { public function index(Request $request) { $data = [ 'html' => '<h2>ABC</h2>', ]; return view('hello.index', $data); } } <body> {!! $html !</body>…
例外処理とは、想定されているエラーに対して対応を行うことです。 例外処理の基本はこんな形。 割り算の処理で0が渡されたらエラーとします。 function func($a,$b) { if ($v === 0) { throw new Exception("エラーだよ"); } return $a / $b; } try { echo …
名前空間とはクラスや関数などの名前の衝突を防ぐために「名前の空間」を利用して、それぞれグループ化することがあります。 とにかくクラスなどを衝突させない為の仕組みです。
遅延束縛とは... 静的継承のコンテキストで呼び出し元のクラスを参照できるようになります。 https://www.php.net/manual/ja/language.oop5.late-static-bindings.php