綺麗に死ぬITエンジニア

Laravel 5へ自作のヘルパー関数を追加するベストプラクティス

Laravelには、ヘルパー関数(Helper Functions)という、便利なグローバル関数が複数定義されています。このヘルパー関数の多くはフレームワーク自体で使用されていますが、ユーザーがアプリケーションに含むこともでき、自由に使用できます。しかし実際には…

Laravel 5で2段階認証(2要素認証)を実装する方法(Google Authenticator利用)

Webアプリケーションのセキュリティを考える上で、やはり最も重要視すべきなのが、認証の部分でしょう。いくら脆弱性の含まない、完全なWebアプリだったとしても、IDとパスワードが流出してしまったら、全く意味がありません。近年、推測可能なパスワードを…

私がWordPressをこれ以上使うのを諦めた理由

2017年1月、私は当ブログ立ち上げ以来2年間利用し続けてきたWordPressを使うのを辞めました。現在は、PHPフレームワーク(Laravel)を用いて作成した、独自開発のCMSで運用しています。私がなぜ、これまで利用してきたWordPressを切り捨てるに至ったか、その…

CakePHP 3でDotenvを使って環境設定する方法

LaravelなんかのPHPフレームワークでは、デフォルトで.envファイルを用いて環境設定(Dotenv)するようになっています。CakePHP 3は、デフォルトでDotenvが利用できる形にはなっていないので、ライブラリを導入してDotenvで環境設定ができるよう実装する手順…

PHP 7系からは高速array_diff関数は必要ない

PHP 5.6以前では、遅かった配列処理系の関数も、PHP 7以降ではかなり高速化されています。PHP 5.6以前で、array_diff関数が遅く、独自の高速化array_diff関数を使っていた方も多いのではないでしょうか。以下のような関数です。高速化array_diff関数<?phpfun…

2016-11-18 PHP

CakePHP 3のORM matchingメソッドで複数の条件を指定する方法

CakePHP 3系にて、アソシエーションを利用する場合に便利なmatchingメソッド。便利に活用させていただいていたのですが、利用していく上で、複数の条件を指定する場合において少し悩んだので、備忘録として。使い方まずは通常の使い方から。matchingは、多対…

PHPでの最低限のセキュリティ対策のやり方(後編)

PHPにおける基本的なセキュリティ対策の方法について、備忘録としてまとめます。PHPでこれからWebアプリケーションやWebサイトを作成しようと考えている方は、各項目について対策は万全か、是非一度ご確認ください。本記事(後編)では、以下に関する脆弱性…