PSR-0 Specification 1. Namespaces must be consistent with absolute paths 2. The first letter of the class name must be capitalized 3. Other than the entry file, PHP must have only one class.
Develop a framework that complies with PSR-0 specifications
1. Use all namespaces
2. All PHP files must be loaded automatically, cannot have Include/require
3. Single entry
Project
Directory
Index.php in the Controller
<?phpnamespace app\controller\home;class index{ static function test () { echo ' I am the controller '; }}
loader.php
<?php/** * User:baldy * createtime:2018/2/27 pm 5:27 * Description: */namespace imooc;class loader{ static functio n AutoLoad ($class) { $file = BASEDIR. ' /'. Str_replace (' \ \ ', '/', $class). PHP '; Require $file; }}
object1.php
<?phpnamespace imooc;class object1{ static function test () { echo "I am Object"; }}
index.php
<?phpdefine (' BASEDIR ', __dir__); include BASEDIR. '/imooc/loader.php '; Spl_autoload_register (' \\imooc\\loader::autoload '); Imooc\object1::test (); App\controller\home\index::test ();
Results
I'm object, I'm the controller.