@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="VcsDirectoryMappings">
+ <mapping directory="$PROJECT_DIR$" vcs="Git" />
+ </component>
+</project>
@@ -0,0 +1,8 @@
+<?php
+namespace App\Controller\Home;
+
+class Index{
+ static function test(){
+ echo 'hello chuck';
+ }
+}
@@ -0,0 +1,17 @@
+namespace Core;
+class Loader{
+ /**
+ * @param $class
+ */
+ static function autoload($class){
+ * $class 出来的是反斜杠 App\Controller\Home\Index
+ * 需要转化一下 再包含进来
+ * 所包含的文件需要有命名空间
+ require BASEDIR.'/'.str_replace('\\','/',$class).'.php';
@@ -1,2 +1,18 @@
<?php
-echo 'hi';
+/**
+ * 定义根目录常量 /www
+define('BASEDIR',__DIR__);
+ * 载入自动加载
+include BASEDIR.'/Core/Loader.php';
+ * 自动载入类 传入方法名
+ * 当实例化或者调用不存在的类时,会回调该方法
+spl_autoload_register('\\Core\\Loader::autoload');
+App\Controller\Home\Index::test();
@@ -1 +1,6 @@
-##基于psr-0规范的自定义框架,包含类的自动加载、命名空间、各种设计模式的学习。
+##基于psr-0规范的自定义框架,包含类的自动加载、命名空间、各种设计模式的学习。
+App 应用目录
+ Controller
+Core 核心目录
+ Loader.php 类的自动载入
+index.php 入口文件