include
は、ファイルを見つけられない場合に warning を発行します。
一方 require
の場合は、 fatal error を発行する点が異なります。
これらの違いは エラー時に処理を続行するかどうかに影響します。
これは 怪しいのは 存在を知っているかどうかで 違いは判ると思います。
once
有りだと 読み込み済みのファイルは読み込まず、
無ければ 実行された回数だけ読み込みます。
once
有りは 関数を定義しているファイルの読み込みに使います。
一方で 直接処理を記述しているファイルなどで繰り返し使うものは
無しのものを使います。
例えば echo time();
と書いてあるファイルがあって、
これを何回か読み込むことによって 何回も表示させる場合などです。
__Dir__ をつけよう。