@ledsun blog

無味の味は佳境に入らざればすなわち知れず

独習PHP 第4版

Laravelアプリケーションの特定の機能をリファクタリングしていました。 ところどころ思ってたんと違う動作があって引っかかりました。 PHPの言語仕様を一通り確認したいなと思って読みました。

そういう目的があったので、ライブラリ、HTTPリクエスト、DB関連は飛ばしました。 こういう知りたいことがわかっているときは、良い感じに網羅されててちょうど良かったです。

僕は他のプログラミング言語経験者なので、ここはC言語っぽい、ここはJavaScriptっぽい、Rubyっぽい、C#っぽいと理解していきました。 その中でも変わっていると思った特徴があります。

  • 大文字小文字を区別しない
  • 関数の引数は値渡し。参照の値渡しじゃなくて、値渡し。
  • 無名関数はクロージャーだけどデフォルトでは、無名関数の外側のローカル変数が見えない

これで、リファクタリングが捗りそうです。