ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# 目录结构 ## 例子 在安装完毕后,您访问XPHP目录,会返回404错误; 访问 `/index.html`,就可以看到样例页面。它包括了XPHP的版本号。 ## 目录结构 - App (应用主目录) - Home (示例Home应用目录) - Controller (控制器目录) - IndexController.class.php (首页控制器) - Model (数据模型目录) - Lib (库目录) - X (框架目录) - App.class.php (应用类) - Autoloader.php (自动加载器) - Controller.class.php (控制器基类) - Error.class.php (错误处理器) - Header.class.php (Http头处理器) - Model.class.php (模型基类) - Route.class.php (路由类) - View.class.php (模板处理器) - Log.class.php (日志处理器) - Var (数据目录) - Data (XDO数据目录) - Log (日志目录) - info.log (记录日志) - error.log (错误日志) - Lang (语言目录-i18n) - zh_cn.json (系统中文语言包) - en_us.json (系统英文语言包) - Route (路由配置目录) - Index.json (示例应用路由) - Template (模板目录) - default (默认模板目录) - System (XPHP系统所需模板目录) - Error.tpl (系统错误模板) - HTTP_E.tpl (404/500/503等错误模板) - Home (示例应用模板) - index.tpl (`/index.html`的模板) - vendor (composer库目录) - autoload.php (自动加载器) - ... (一堆第三方库文件) - .htaccess (Apache伪静态配置样例文件) - Config.php (主配置文件) - index.php (入口文件) - composer.json (composer依赖文件) - composer.lock (composer安装完成锁文件) - LICENSE (MIT许可协议) - README.md (GitHub README) ## 配置文件 一个正确的`Config.php`看上去是这样的: ```php <?php $GLOBALS['_C']['Template'] = "default"; //模板 Template $GLOBALS['_C']['Language'] = "zh_cn"; //语言 Language $GLOBALS['_C']['RouteBase'] = "/XPHP"; //index.php所在相对站点根目录路径 $GLOBALS['_C']['Log'] = array( //日志文件名 Log Filename "INFO" => SysDir."Var/Log/info.log", // "WARNING" => SysDir.'Var/Log/warning.log', "ERROR" => SysDir.'Var/Log/error.log' ); $GLOBALS['_C']['enableORM'] = true; //开启ORMDB //-----------------ORMDB MySQL Example----------------- $GLOBALS['_C']['ORMDB'] = array( //ORM数据库配置 ORMDB Configure 'connection_string' => 'mysql:host=localhost;dbname=xphp;charset=utf8', //DSN 'driver_options' => array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'), //PDO Option 'username' => 'root', //用户名 username 'password' => '', //密码 password 'logging' => true, //开启Query日志 Enable Query Log 'caching' => true, //开启缓存 Enalble Cache 'caching_auto_clear'=> true //自动清理缓存 Auto Clear Cache ); //-----------------ORMDB SQLite Example----------------- // $GLOBALS['_C']['ORMDB'] = array( //ORM数据库配置 ORMDB Configure // 'connection_string' => 'sqlite:'.DatDir.'xphp.db', //DSN // 'logging' => true //开启Query日志 Enable Query Log // 'caching' => true, //开启缓存 Enalble Cache // 'caching_auto_clear'=> true //自动清理缓存 Auto Clear Cache // ); ``` 看注释,应该就会改了吧。 `ORM`就是在Model里面连接MySQL,SQLite等数据库的封装,XPHP选择了`Idiorm`作为默认数据库处理,文档: https://idiorm.readthedocs.io 注意:所有路由的Base前都会自动加上`$GLOBALS['_C']['RouteBase']`。 什么是路由Base,下一节会讲到。