phpのstaticとは
staticとはclass内の部品(メソッドや変数)にstaticキーワードをつけることによって、クラス外部でのインスタンス生成が不要になります。
staticキーワードがついた変数やメソッドを外部で呼び出すときは
クラス名:: staticの変数名とかきます。(例: User::getmmssage())
またstaticを使用することによってselfが使えるようになります。コンストラクタでselfを使うとインスタンスの数をかぞえることができるようです。
PHPのStaticを使った参考コード
phpタグを書くとおかしくなる可能性があるのでphpタグは省略しています。
class User{
//プロパティ
public $name;
//インスタンスを数えるにはどうしたらいいのか
public static $count = 0;//変数の初期化
public function __construct($name){
$this->name = $name;
self::$count++;//static同様の書き方 self::$count ポイントは$count変数がstaticになっていること
}
public function sayhi(){
echo “hi , i am $this->name!”;
}
//staticキーワードメソッド
public static function getMessage(){
echo “hello from User class!”;
}
}
User::getMessage();//クラス名::でstaticメソッドを使用できる
$tom = new User(“tom”);
$taguti = new User(“taguti”);
echo User::$count;
echo $taguti->sayhi();