2015-10-01から1ヶ月間の記事一覧
名前空間とは 2009年にPHP5.3.0のバージョンが出たことで、PHPに『名前空間』というものが導入されました。 『名前空間』を使うと、クラスや関数に名前をつける際に、他の人が作ったライブラリで使われてるクラスや関数の名前と一緒になってしまう(業界用語…
PHPのPDOクラスでのデータベース接続で、 query('SET NAMES utf8'); みたいな記述が出てきて、『query('SET NAMES utf8');』の引数の意味を調べてみました。 結論として、『'SET NAMES utf8'』はSQLステートメント(SQL文)で、 『'SELECT * FROM mst_staff…
PDO(PHP Data Object)って何じゃらほい。 「SimpleXML」と「JSON」で共通データ形式を便利に (2/2)- @IT によりますと、 というように、データベースの種類が異なったとしても、それぞれのPDOドライバを用意しておけば、PDOコアモジュールが提供するAPI…
オーバーロード プログラミング言語において関数や演算子やメソッドの同一名や同一の演算子記号について複数定義し、利用時にプログラムの文脈に応じて選択することで複数の動作を行わせる仕組みである。 PHPには「オーバーロード」という機能が存在するが、…
PHP7から使えるという無名クラス、なんとクラスの定義をすることなくインスタンス(オブジェクト)を生成できる機能のようです。 new classで インスタンスを生成します。 ⇩ 無名クラスについては下記サイトへ ・PHP 7 の無名クラスから考えるクラスの在り方…
『遅延性的束縛(Late Static Bindings)』ってネーミングは、インパクトがすごいですが。 qiita.com ⇧ 上記サイト様が分かりやすいかと。 maeharin.hatenablog.com ⇧ 上記サイト様が、詳しく解説してくれてます。 静的な呼び出しで起こる問題 「遅延静的束…
PHP5.4以降で『トレイト(trait)』というしくみが導入されたようです。 抽象クラス、インターフェイスときて、トレイトです。 トレイトは、多重継承のできないPHPで、継承することなくクラスにメンバ(メソッドやプロパティ)を追加できるしくみのようです…
詳しく分かりやすい説明をしてくれてるサイトが多いので、もはや、下記サイトをご覧になっていただければ済む話ですが、一応、自分なりにインターフェイス(interface)と抽象(abstract)クラスの違いを調べました。(ほぼ、他サイト様の流用です。) ⇩ イ…
インターフェイス(interface)と似て非なるもの、それが抽象(abstract)クラスらしいです。 PHPマニュアル(PHP: クラスの抽象化 - Manual )の説明によると、 クラスの抽象化 PHP 5 では、抽象クラスとメソッドが導入されました。abstractとして定義され…
前に、タイプヒンティング(型宣言)について調べたら、インターフェイスと組み合わせると効果的となっていたんですが、PHPマニュアルによると、 『 インターフェイスとタイプヒンティングを組み合わせると、 特定のオブジェクトに特定のメソッドをうまく持…
タイプヒンティング(Type Hinting) パラメータ(引数)の型を指定できます。 指定した型のことをタイプヒント(型ヒント)といい、タイプヒントに一致しない型のパラメータ(引数)を受け付けません。(型が違うとエラー。) PHP5から導入されました。 PHP…
PHPのアクセス権について、PHPマニュアルを見ていたら、『public function baz(Test $other)』なるメソッドがクラスの中で定義されていたのですが、引数の中身の意味が分からなく、説明も一切なかったので調べてみました。 ・PHP: アクセス権 - Manual その…
スタティックとは? ⇒ static キーワード(クラスとオブジェクト)- PHPマニュアル オブジェクト指向は「クラスを作って、それをオブジェクトとして呼び出す」ということです。 一般的に、new演算子でクラスのインスタンス(オブジェクト)を作ってクラスの…
PHPで擬似変数$thisって、何のためにあるの?と思ったので調べてみました。 例:擬似変数$this todays_date = date("Y-m-d"); $this->name = $GLOBALS['firstname']; /* 等など. . . */ …
PHPでは、PHP5ぐらいから、『オブジェクト指向プログラミング言語(OOP)』、俗に言う『オブジェクト指向』の機能が充実してきました。 ・PHP: Hypertext Preprocessor ・オブジェクト指向プログラミング OOP(object-oriented programming) 相互にメッセージ…
Webブラウザ(パソコン)に保存されるもの キャッシュ( Cache )⇒ 何度も見るWebページがある場合に、2回目以降の閲覧時の表示スピードを上げるため、ページ内の画像やアイコンといったデータをパソコン内に保存する仕組み(またはその保存されたデータ自体…