コロンっておいしいよね(スコープ定義演算子)

ちっさい頃、中のクリームを指で押し出して食べてた(汚い)
  
いや、食べてたけども。
今回はその話ではないのです。
  
今日も今日とてPHPをさわっていたら
あらまぁ不思議、 ::(コロン2つ)並んでたのですよ。
  

$hoge = $foo->fetchAll(PDO::FETCH_COLUMN, 0);

こんな感じでPDOの中では見たことがあったんだけど、  
PHPの中では見たことがなくて!調べてみたー
  
参考サイト:【 ほでなすPHP 】 PHPの基本 -> クラス
  
ここによると、
インスタンスを生成しなくても、クラスのメンバ関数(クラス関数という)を使うことができる」そうな!
リンク先にも書いてあるけど、こっちにもサンプル書いとく。

<?php
class hoge {
    function foo() {
        print('Hello World!!!');
    }
}

hoge::foo();    //Hello World!!!が表示される

こんな感じ。
:: 演算子(スコープ定義演算子)というらしい。コロンコロン演算子じゃないのね
  
通常だとインスタンスオブジェクトを生成しないと
クラスのメンバ変数やクラス関数は使えないんだけど、
この ::(コロン2つ)を使えはクラス関数だけは使えちゃうのです!
注:メンバ変数は使用不可。メンバ関数の中でクラスのメンバ変数を参照するのもできないよ
  
便利なものもあるもんだねー