PHP
PHPバイトコードキャッシュの性能 – Opcache
PHPの性能はバイトコードキャッシュにより数倍向上するのですが、久しぶりにopcacheをキーワードに検索してみると「それほど効果がない」と誤った評価をしているページもあったので、Opcacheによりどのくらい速くなるか簡単なベンチマークをします。 (さらに…)
マイナンバーのチェックデジット確認
マイナンバーのチェックディジットを確認する必要があったのでPHP関数を作りました。
PHP7からクロージャーの即時呼び出しが可能に
しばらく前(と言っても確か今年)、PHP開発者MLにクロージャーがその場で呼び出せないのは不便だ、と書いた事があるのですが知らない間に追加されていました。
メソッド/関数呼び出しによるコード実行問題とその対策
前回、インジェクション攻撃の基本パターンを紹介したのでイレギュラーな例を紹介します。 言語の機能としてシリアライズされた”データ”からオブジェクトを生成(PHPの場合、unserialize関数)したり、呼び出すメソッド/関数を指定できる機能(PHPの場合、call_user_func*関数/call_method*関数など)を使ったりすると意図しないメソッ…
PHPに無いセキュリティ機能 – PHPカンファレンス関西2015
PHPカンファレンス関西に参加してきました。私のセッションの資料をPDFまたはSlideshareで見れるようにしました。
今すぐできるWAFの導入
PHPに簡易WAF機能を追加するのは簡単です。今すぐできます。同じ考え方で他の言語でも実装可能ですし、Apacheのmod_rewirteを使って実装、iptablesのstringモジュールなどを使っても実装できます。
PHP7のタイプヒントの使い方
PHP7で基本的なデータ型である"int"や"float"、"array"タイプヒント(データ型のヒント)がサポートされます。使い方を間違えると思ってもいない問題が発生することがあります。しかし、正しく使えば問題ありません。タイプヒントの使い方を簡単に紹介します。
PHP7 is going to be strictly typed language. Will this work?
In previous blog, I wrote how PHP7's basic type hinting works and missing piece to make it work. I would like to explain reason why current type hinting design will not work well f…
Don’t use PHP7 type hint for external data
PHP7, expected 2015 Q4, comes with scalar type hints that supports "int", "float", "array". While it is good thing to have type hints for basic data types, but it changes the way d…
Building Dynamic websites. Harvard OpencourseWare. CS E-75
すこし古い(2012年)ハーバード大学での「動的Webサイト構築」の動画です。英語の勉強を兼て基礎からWeb開発を学ぶには良い動画です。長いので流石に全部は見ていません。しかし、ほとんどの内容は現在でも通用する物になっていると思います。
PHPスクリプトファイルアップロード攻撃を防止する方法
PHPはスクリプトアップロードに弱いシステムですが、PHPアプリにはファイルアップロードをサポートしているアプリが数多くあります。WordPressなど自動更新を行うアプリも増えてきました。 PHPアプリの場合、MVCフレームワークなどを使っていてもエントリポイントにはPHPファイルが必要です。ファイルアップロードをより安全に使うための設定も可能ですが、Wo…
Laravelエキスパート養成読本
PHPのWebアプリケーションフレームワークとして人気を得つつあるLaravelの入門書「Laravelエキスパート養成読本」を献本頂きました。Software Design Plusのムック本になっています。