PHPの関数リファレンスが面白い

PHPの関数リファレンスが面白い。(http://php.net/manual/ja/funcref.php) そのなかでもやっぱり、配列の関数一覧が面白い。(http://php.net/manual/ja/ref.array.php) しばしば配列の操作をしようとしたときに、二重for文になってしまったり、for文の中で複雑なif文を書いたりしてしまう。可読性が悪いだけでなく、そもそも実装の意図が見えなくなってしまうことさえある。 実装も見てみたいけど、最近覚えたのがarray_filter。まだ使ってないから、いつか使うタイミングがあったら使いたい関数。 配列操作の関数は他の言語でも充実しているから、新しい言語を覚えるときは、そのあたりもちゃんと使いこなせるようになりたい。...

phpinfoをコマンドラインで表示

​基本的なことだけど、忘れがちなのでメモ。 $ php -i もしくは、 $ php -r 'phpinfo();' パイプしてlessしたりgrepすればより使いやすい。...

PHPのuse, require, includeの違い

phpを触り始めて3年目。おそらく初めてrequire_onceを使った。これまでLaravelばかり使っていたので、あまり意識してこなかった部分だった。ここで、インポート系シンタックスをまとめておこうと思う。 インポート系シンタックス 他にもあったかもしれないけど、ひとまずこれを。 requireとrequire_once includeとinclude_once use requireとrequire_once requireは指定したファイルを読み込む。もしファイルを読み込めなかった場合は、Fatal Errorを発生する。require_onceを使用すると、既に読み込まれている場合は再読込みを行わない。再読込みが行われて、変数などが再定義されると困る場合は、require_onceを使う。 includeとinclude_once includeは、指定したファイルを読み込むという点では、requireと同じ。ファイルが読み込めなかった場合は、警告を出すのみで、処理は継続する。include_onceを使用すると、既に読み込まれている場合は再読込みを行わない。用途はrequire_onceと同じ。 use useは、指定した名前空間のクラスを参照できるようにする。参照したいクラスのnamespaceとクラス名を指定する。requireやincludeはファイルを指定するのに対して、useはクラス名、名前空間名を指定する。このあたりについては、別途勉強することにする。名前空間のサポートは、php 5.3から始まったらしい。 もはやphpは7なのだが……勉強がまだ足りない。...