名前空間を使う場面
ファイルを複数に分割して読み込むとき。
使用目的
同一関数名やクラス名、メソッドなどのバッティングを防ぐ。
ファイルが増えたり、複数人での開発時などに有効。
使用例
呼び出し(require)元ファイル
<?php
// 必ず先頭で名前空間を宣言。バックスラッシュで階層を指定。
namespace MyApp\Class;
class User {
public $name;
public function __construct($name) {
$this->name = $name;
}
public function greeting() {
echo "Good morning, Mr $this->name!";
}
}
?>
実行ファイル
<?php
require "User_class.php";
// use 名前空間名 (use MyApp\Class as Class)
use MyApp\Class;
$Tom = new Class\User("Tom");
$Tom->greeting();
?>