こんぶにのブログ

エンジニアという職業を通して学んだことを発信するブログです。

Cakephp4にて、デザインテンプレートcakelteを適用してみた。

今回はこちらを使ってみた。
github.com ベースはAdminLTE。
それをCakePHPで使いやすいようにしてくれたもの。

実装手順

Githubのドキュメント通り行った。 指定されたファイルを置き換え、移植するところはCakePHPのフォルダ構成と同じ箇所に行えばOK。

発生したエラー

以下のエラーが発生した。
osa.hatenablog.com ローカルで試したときは起きなかったのに、EC2で確認しようとしたら起きたエラー。
こういう時は大体nginx絡みか権限絡み。
nginxではファイルのサイズが大きい時にバッファで一時ファイルに読み込むらしい(バッファがあまり分かっていないのだが)。
で、その一時ファイルをnginxを実行しているユーザが取得しようとしてるんだけど、そのユーザに一時ファイルディレクトリへの権限がなかった模様。
う~ん、難しい。
この記事を書いてくれた方に感謝。

ついでに出力バッファリングについて学んでみた

以下の記事を参考。
laboradian.com

バッファとは、細かくちょこちょこやるより、一気にまとめてやった方が早いよね!!
という思いの元に使われている技術のようだ。
いつ使うねん!と斎藤紳士みたいなことを言ってしまいたくなるが、
いちいち読み込み実行読み込み実行、とするよりかはまとめて読み込んで、一気に実行!とした方がいい場面があるらしい。
いかによると、例えば別ファイルを複数読み込みたいときとか。
PHPでob_startの使い方。出力タイミングを制御しよう | キノコログ

今度レビューで指摘されるの前提でさらっと使ってみようかな。

ob_startについて学んだこと補足

ob_start()とするたびにバッファが別に作成されて、上に積み上げられていく。
ob_get_contentsを使うと、積み上がった一番上のバッファを取得する。
他のob_なんちゃら系もそんな感じ。