インフィニットループ仙台支社のプログラマー、いがらしです。 PHP 界隈の気になったことをまとめ、月一くらいで宮城県仙台市からお送りします。 前回に引き続き、主に最近 GitHub で見かけて気になった PHP プロジェクトや、PHP の言語開発者メーリングリストである internals の議論などをつまみ食いして紹介します。
PHP7では無名クラスが導入されます。 PHP7調査(26)無名クラスの導入 - Qiita これ、単に構文だけの話にせず、「クラスの第3の能力が単独で切り出された」と捉えると面白いのかなと思いました。 クラスが持つ3つの役割 クラスが持つ3つの役割 - 西尾泰和のはてなダイアリー 「コーディングを支える技術」の西尾泰和氏によると、クラスには ユーザー定義型 実装の再利用の単位 インスタンス生成器 の3つの役割があるといいます。 クラスが扱いづらい概念だとすれば、それはこの3つの能力をまとめて持っているからです。 PHPのユーザー定義型、インターフェース PHPの場合、タイプヒントがありますし、定義したクラスは後から拡張することができません(オープンクラスではない)。 if ($obj instanceof FooClass) { //... } この「$objがFooClassのインスタ
(Last Updated On: 2018年9月26日)PHP 7から基本的なデータ型(整数型、浮動小数点型、配列型)タイプヒントが追加されます。直感的に書くコードと正しいコードには乖離があります。PHP7でタイプヒントを使う場合のベストプラクティスを紹介します。 タイプヒントとタイプヒントの問題点については前回のブログを参照してください。 PHP7タイプヒントの注意点 PHPはWebシステムで利用され、データベースやJSONなどの外部データとのやり取りが必要になります。PHP7のタイプヒントはデータ型変換を伴うので 入力データの形式/表現範囲 PHPデータ型の表現範囲 タイプヒント/キャストの動作 に注意する必要があります 入力データの形式 データベースの場合、入力データは基本的に”文字列”になります。データベースのデータ型をPHPなどの言語のデータ型と完全に一致するとは限りません。こ
(Last Updated On: 2018年8月13日)PHP7が今年の秋リリースされる予定です。まだまだ多くの変更が行われる予定ですが、現状を簡単にまとめてみたいと思います。代表的な物のみ取り上げています。 ご存知ない方の為に書いておきます。現在リリースされているPHPはPHP5です。次のPHPはPHP7になり、PHP6はリリースされません。PHP6をUnicodeをネイティブ文字列としてサポートするバージョンとして開発されましたが、文字エンコーディングチェックを内部で自動的に行おうとするなど、無駄が多く遅いため破棄されました。(文字エンコーディングのバリデーションは本来アプリでするものです)このため、PHP6はスキップされ次のPHPはPHP7になります。 追記:PHP7.0は既にリリースされています。概要はPHP 7.0の概要・新機能・互換性、詳しくはマイグレーションドキュメントをご
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く