注意: Asf 限定文件后缀加载, 有且只有后缀名称为小写的 php 才是允许的.
我们认为去修改PHP文件后缀的需求不可取.
英文缩写 | 英文全称 | 对应传统 MVC |
D | Dao | Mode |
L | Logic | 无 |
S | Service | Controller |
框架自动加载 asf.root_path='/data/www' 目录下的 DLS 文件, 只根据绝对路径查找文件一次.
名称 | 格式要求 | 加载路径 |
模块 | 英文 + 数字, 英文字母开头; 比如模块名为默认值 api | /data/www/modules/api |
控制器 | 类名后缀 Service, 比如 class IndexService | /data/www/modules/api/services/Index.php |
逻辑层 | 类名后缀 Logic, 比如 class IndexLogic | /data/www/modules/api/logics/Index.php |
数据层 | 类名后缀 Dao, 比如 class IndexDao | /data/www/modules/api/daos/Index.php |
constant | 类名 OR 类名后缀 Constants | class NewConstants: /data/www/modules/api/library/NewConstants.php class Constants: /data/www/modules/api/constants/Constants.php |
bootstrap | 类名限制必须为 Bootstrap | /data/www/modules/api/Bootstrap.php |
非框架的类/开发者自定义类库放置目录, 类名等于文件名. asf.root_path = /data/www/
类名定义方法(未开启命名空间) | 调用的方法 | 所在路径 |
class Book {} | Asf_Loader::get('Book') | /data/www/library/Book.php |
class Cache_Memcached {} | Asf_Loader::get('Cache_Memcached') | /data/www/library/Cache/Memcached.php |
class Cache_Redis {} | Asf_Loader::get('Cache_Redis') | /data/www/library/Cache/Redis.php |
类名定义方法(开启命名空间) | 调用的方法 | 所在路径 |
class Book {} | Asf\Loader::get('Book') | /data/www/library/Book.php |
namespace Cache; class Memcached {} |
Asf\Loader::get('Cache\Memcached') | /data/www/library/Cache/Memcached.php |
namespace Cache; class Redis {} |
Asf\Loader::get('Cache\Redis') | /data/www/library/Cache/Redis.php |