ついて、複数の文字列を渡せるようにしたい。渡された配列にある文字列が全て回文の場合のみtrueを返し、それ以外の場合はfalseを返すものとする。型の相互変換をした上で比較する。この挙動はバグを仕込みやすい。つかうようにすること。不等号についても同様。制御構造でサポートされている。ついてはkeyとvalueをそれぞれ取得することができる。3再帰をつかうこともできる。クロージャ配列操作のところで利用していたが、PHPでも無名関数を利用できる。対してコールバックのためのパラメータとして渡す例などを見てきた。ここではクロージャについて説明する。使うことによって、無名関数のスコープの外にある変数を束縛することができる。値はコピーされて渡されることに注意すること。無名関数を再帰させることによって書き換えなさい。実装についての違いを述べなさい。トレイトまず実際の例を見て欲しい。god.PHPでもクラスを利用できる。トレイトを利用できる。Scalaのトレイトに近い。Hiコードを再利用する目的なら、継承ではなくトレイトを利用すべきだ。トレイトの副作用についても知らなければいけない。staticなメンバの利用、トレイトをまたいだ依存関係をつかわないこと、などについて触れておく。http://php.net/manual/ja/language.oop5.php継承PHPのクラスでも継承を扱うことができる。クラス、関数といったファイル内の項目をカプセル化するものだ。例をみるとわかりやすい。Goなどの言語を触ったことがある人にはわかりやすいだろう。Rubyでいうとモジュールである。0.8414709848079名前空間を利用すると、当該ファイルの外に定義されているクラスや関数の呼び出しがわかりやすくなる。利用し、ファイル自体を呼び出す形式がよく利用されていた。大きなプロジェクトになるとファイルベースでの呼び出しは管理がしづらくなる。そのため、今は名前空間を利用するようにしたほうがよい。名前空間を利用していたとしても、その定義元のファイルがどこに配置されているかがわからないと関数やクラスの呼び出しを行うことはできない。そのため、名前空間はPSRに準拠させた形式で配置し、composerと合わせて利用されることが一般的になっている。GroupWorkBaseを例にcomposer.jsonについて紹介するcomposerはPHPにおける依存関係管理の仕組みだ。cartonのようなものだ。http://ja.phptherightway.com/#dependency_managementデータベースとの接続及び操作DBへの接続はPDOをつかう。}データベースへの接続を取り扱うのがPDOオブジェクトだ。PDOは通常取り扱われるリレーショナルデータベースであれば大抵接続できる。認証のオプションなどについては以下を参考すること。http://php.net/manual/ja/pdo.connections.phpPDOでのデータベース操作は他の言語と同様だ。基本的にパラメータを埋め込む場合にはプリペアドステートメントを使うこと。値の束縛を扱いやすくしてくれるだけでなく、SQLインジェクション対策としても有効である。PDOではデータベースがネイティブでプリペアドステートメントをサポートしていなくても、PHP側でエミューレートするようになっている。http://php.net/manual/ja/pdo.prepared-statements.php各手続きについての戻り値についてはPHPマニュアルを参照すること。挿入や削除が失敗していないか、テーブルの管理に関するコマンドが失敗していないかどうかをハンドリングすることは実際のアプリケーションの大きな関心ごととなる。例外についても他の言語と似ている。よって任意の例外を返すことができる。