みたいな「全部入り」のインストーラーを使えば、このあたりのソフトも一緒に入れられるし設定もしてくれる。インストーラーに縛られてしまって自由にいじれなくなるという弱点もある。バイナリをダウンロードしよう。実行できるようになる。以降のビルトインウェブサーバーを使えばよいので、細かい設定を気にする必要はない。XAMPP、EasyPHP、OpenServer、そしてWAMPなどがお勧めだ。用の開発環境を手早く構築できる。いうものの、これらのツールは実際の運用環境と微妙に異なる。いう場合は環境の違いに気をつける必要がある。これが一番安定しており、かつパフォーマンスも優れている。設定は管理をシンプルにできる。組み込まれており、すぐに使える。ハンドラとして設定するだけでよい。開発環境と運用環境が違っていると、いざ動かしたときにおかしなバグが発生しがちだ。Windowsで開発したアプリケーションをLinux(などの非Windows環境)で動かしているのなら、仮想マシンを使うべきだ。コミュニティはとてもでっかくて、いろんな人たちがいる。数え切れないほどのライブラリやフレームワークそしてコンポーネントが存在する。そんな中からいくつか選んで、それを組み合わせてひとつのプロジェクトで使うっていうのもよくあることだ。標準的なスタイルに従うことだ。すれば、いろんなライブラリを組み合わせて使うのも簡単になる。おすすめのスタイルを提案している。コーディングスタイルとは関係ないものもあるけれど、PSR-1、PSR-12、そしてPSR-4はコーディングスタイルを扱っている。プロジェクトが採用しつつある規約をまとめただけのものなんだ。自分のプロジェクトでこれを使ってもいいし、今までの自分のスタイルを使い続けてもいい。コードを書くときには、よく知られた何らかの標準規約に従うべきだ。さっき説明したPSRの組み合わせでもいいし、PEARとかZendのやつでもかまわない。すれば、他の人にもコードを読んでもらいやすくなるし、手助けも得やすくなるだろう。コンポーネントを実装するアプリケーションがいろんなサードパーティのコードを組み合わせても、一貫性を保てる。自分のコードがこれらの標準のどれかひとつに準拠しているかどうかを確認できる。書いているその場でリアルタイムのフィードバックが得られる。コードのレイアウトを自動的に修正するツールとしては、二つの選択肢がある。Fixerがそのひとつで、これはきちんとテストされているコードだ。これはPHP_CodeSnifferに含まれている。これを使って、コードのレイアウトを適切に調整できる。シェルから手動で実行することもできる。file.phpこれは、エラーの内容とその修正方法を表示してくれる。hookに仕込んでおけば便利だろう。すれば、標準規約に反する変更を含むブランチは、それを修正するまでリポジトリに投入できなくなる。PHP_CodeSnifferを使っている場合は、指摘されたコードレイアウトの問題を自動的に修正することもできる。Fixerを使えばいい。これは、実際に修正するまえにコードにどんな問題があったのかを表示してくれる。file.php変数や関数などのシンボル名、そしてディレクトリ名などのコード基盤なんかは、英語にしておくことをおすすめする。コードのコメントに関しては、別に英語にこだわらなくてもかまわない。そのコードを扱う(将来扱う可能性がある)すべての人が読みやすいものであれば、何語でもかまわない。柔軟性のある動的言語で、いろんなプログラミングテクニックに対応している。長年の間に劇的に成長してきた。特筆すべきところだろう。完全なオブジェクト指向プログラミングの機能が搭載されている。例外などなどといった機能も、当然使える。ファーストクラスの関数をサポートしている。関数を変数に代入できるってことだ。変数で参照したり動的に実行したりできる。できるし、関数の返り値を別の関数にすることもできる。機能としてサポートしている。コードはそれよりも逐次処理を重視している。クロージャをオブジェクトのスコープにバインドできるようになった。サポートも強化され、ほとんどの場合で無名関数と互換性を持つようになった。マジックメソッドが使える。あり、これらを活用すればクラスの振る舞いをフックできる。コミュニティでは多くの人たちがいろんなコードを書いている。ことは、誰かが書いたライブラリと別の人が書いたライブラリでクラス名がダブってしまう可能性があるということだ。両者が同じ名前空間を使っていたら、衝突して問題の原因となってしまう。ファイルシステムのディレクトリと似てる。別々のディレクトリに分ければ共存できるというわけだ。同様に、別々の名前空間に分ければ同じ名前のクラスがふたつあっても共存できる。簡単に言うと、そういうこと。自分の書くコードにも、名前空間を指定することが大切だ。