- 自動加載方法:
function my_autoload($name){ $name = str_replace('\\',DIRECTORY_SEPARATOR,$name); require $name.'.class.php'; }
- 註冊:
spl_autoload_register(__NAMESPACE__.'\\my_autoload');
- 代碼:
a. 入口文件:index.php<?php namespace Index; use auto\say; use auto\mycolor\color; function my_autoload($name){ $name = str_replace('\\',DIRECTORY_SEPARATOR,$name); require $name.'.class.php'; } spl_autoload_register(__NAMESPACE__.'\\my_autoload'); $say = new say(); $say->hello(); $color = new color(); $color->test();
b. auto/say.class.php:
<?php namespace auto; class say{ public function hello(){ echo "hello"; } }
c. auto/mycolor/color.class.php:
<?php namespace auto\mycolor; class color{ public function test(){ echo "blue"; } }
php命名空間+spl_autoload_register實現類的自動加載
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.