php

名前がえっちだ…

マニュアル見て意味がわからないなら使わなくていいと思う

php

classをforeachに掛けると全プロパティ・メソッドに対して反復処理する。
処理を変更することも出来る。

ただ、分かり辛いのでほとんど使わないと思う

php

PHP におけるオーバーロード機能は、 プロパティやメソッドを動的に “作成する” ための手法
※大抵の言語でのオーバーロードは、 「名前は同じだけれども引数の数や型が異なるメソッドを複数用意できる」 ...

php

単にuseするだけでプロパティやメソッドを持ってこれる機能
とてつもなく便利だが、名前の衝突などには要注意

一応以下のような制約はある
・継承が不要
・インスタンスは作れない

php

名前の通りオートでロードする機能。
うまく使えばあまり考えずにclassなどをrequireしたり、
存在しない場合にエラーを発生させるなど柔軟に使うことが出来る

php

staticは静的の意味。
・メソッドはインスタンス化せずに使える。
・プロパティは全インスタンス共通。というより全インスタンスがstaticなプロパティを見ている。名前空間付きのグローバル変数と思っていれば大体間違い ...

php

インスタンス作成と同時に使いたい場合はカッコを以下のように使う
class a {public $b=2;}
echo (new a())->b;

php

class a{}
$foo = new a();
$bar = $foo;
この時コピーされるのは参照なので、$fooを変更しても$barが変更される
値でコピーしたい場合はcloneを使う

php

class
プロパティにはアクセス権必須。(publicなど)
メソッドのアクセス権を省くとpublic扱いになる

php

アンダーバー2つで始まる名前の付いたclass内関数です
toString()で返す文字列を決めたり、serialize()メソッドの前に処理を挟むなど特殊な挙動が多く、あまり使うことはありません