私はnamespace
以下のようなクラスに使用します、
class_tidy.php、
namespace foo;
class tidy {
public function hello() {
echo 'Hello';
}
}
index.php、
class MyAutoloader
{
public static function load($className)
{
$parts = explode('\\', $className);
require 'classes/class_'.end($parts) . '.php';
}
}
spl_autoload_register("\MyAutoloader::load");
$test = new foo\tidy();
$test->hello();
完璧に動作しますが、クラスにアクセスできるのではなく、
$test = new foo\tidy();
だが、
$test = new foo::tidy();
きれいに見えます。しかし、このエラーでは、
解析エラー:構文エラー、予期しないT_STRING、T_VARIABLEまたは'$'..が必要です。