首页
社区
文档
日志
登入
注册
文 档
开始
目录结构
配置文件
常量
视图
控制器
文件上传
自动加载类文件
路由
图片验证码
函数
缓存
数据模型
基本操作
数据添加
数据删除
数据更新
数据查询
where条件
自动验证
数据分页
子查询
原生SQL语句的使用
数据缓存
连接Sqlite
内 文 索 引
## 命名: 控制器名.class.php 例如: index.class.php 没有对名称的大小写做限制,因此要特别注意 Linux 下的大小写问题;**建议全部使用小写** >注意控制器的命名空间和继承 <?php namespace c; //命名空间是 c use \z\controller; //导入controller类 class index extends controller{ //定义index控制器继承controller类 static function index(){ //index操作 echo '欢迎使用Z-php框架'; } } >2.0版本开始控制器的操作全部采用【**静态方法**】实现,全部控制器操作名均由 **static** 修饰 ## url访问规则: 上面所示的控制器操作的url:/index.php?c=index&a=index url中的参数 c 就是**控制器名**,a 就是**操作名** 控制器名和操作名是 index 的url中可以省略,因此 /index.php 实际访问的就是index控制器和index操作 ## 分配变量和渲染模板 <?php namespace c; use \z\controller; class index extends controller{ static function index(){ $str = '欢迎使用Z-php框架'; parent::assign('str',$str); //向模板文件分配$str变量 parent::display(); //渲染模板 } } ## 视图中的方法: parent::assign('a',$b); //将$b分配到模板中的变量$a中 parent::display('index'); //渲染当前模板目录下 index(当前控制器名)目录下的名为 index.html 的模板文件 parent::display(); //参数为空默认渲染 当前模板目录/控制器名/操作名.html文件 parent::fetch('index') //返回渲染index模板的字符串结果(不向浏览器输出) parent::json($arr) //输出Json数据 ## display()的参数: 1):绝对路径, display('/wwwroot/web/home/view/default/index/index.html') 2):文件名或方法名, display('index.html') 3):控制器名/文件名或方法名,display('index/index') 4):模板目录名/控制器名/文件名或方法名,display('wap/index/index') 5):应用名/模板目录名/控制器名/文件名或方法名,display('admin/default/index/index') 6):从ROOT开始写的模板文件路径,display('home/view/default/index/index.html') ## 跳转和重定向: parent::success('操作成功'); //提示 操作成功(默认1秒后跳转到之前页面) parent::success('操作成功','/index.php',2); //提示 操作成功,2秒钟后跳转到index.php parent::error('操作失败'); //提示 操作失败(默认3秒后跳转到之前页面),参数2和参数3同success() parent::redirect('/index.php'); //重定向到 /index.php >success() 和 error() 自动判断当前的请求是否是Ajax请求,如果是Ajax请求则返回Json数据,格式如下: {"status":成功是1失败为0, "info":"提示信息", "url":"跳转的url参数"} **关于跳转的模板文件:** 优先使用 应用模板目录下的 jump.tpl 文件 默认使用 core/tpl/jump.tpl 文件 ## 前置操作: **如果控制器中存在 init() 方法,则先执行 init() 操作,之后再执行指定操作** <?php namespace c; use \z\controller; class common extends controller{ static function init(){ //先执行的操作 if(empty($_SESSION['user'])) parent::redirect('/index.php?c=login&a=index'); } } ## 后置操作: **如果控制器中存在 after() 方法,执行完指定操作后会接着执行 after() 操作** <?php namespace c; use \z\controller; class common extends controller{ static function after(){ //执行完控制器的指定操作之后 执行此操作(其前提是之前操作没有中断脚本) } } >如果控制器操作直接 return 数据的话,则会直接输出Json数据并中断脚本 ## _404方法 parent::_404('404.html'); //输出指定的404页面 如果参数为空 默认文件名是:404.html 如果参数不包含路径,优先输出当前模板目录下的404.html;其次是根目录下的404.html;最后是 /core/tpl/404.tpl >非debug模式下:如果控制器类或方法不存在的时候直接输出404页面 可在控制器中重写此方法实现自定义功能