程序员创业做网站做公众号旅游网站建设的费用明细
web/
2025/10/6 20:07:40/
文章来源:
程序员创业做网站做公众号,旅游网站建设的费用明细,如何建立平台网站,网站需要加wordpressTP框架主要是通过URL实现操作
http://servername/index.php/模块/控制器/操作/参数/值..
index.php 为入口文件#xff0c;在 public 目录内的 index.php 文件; 模块在 application 目录下默认有一个 index 目录#xff0c;这就是一个模块; 而在 index 目录下有一个 contro…TP框架主要是通过URL实现操作
http://servername/index.php/模块/控制器/操作/参数/值..
index.php 为入口文件在 public 目录内的 index.php 文件; 模块在 application 目录下默认有一个 index 目录这就是一个模块; 而在 index 目录下有一个 controller 控制器目录的 Index.php 控制器; Index.php 控制器的类名也必须是 class Index否则错误: 而操作就是控制器 class Index 里面的方法比如: index 或 hello; 那么完整形式为: public/index.php/index/index/index 晕了吗? 官方给的默认模块默认控制器默认操作都是 index
环境变量 ThinkPHP5.1 提供了一个类库 Env 来获取环境变量: return Env::get(app_path); 系统路径 Env 参数名称 应用根目录 root_path 应用目录 app_path 框架目录 think_path 配置目录 config_path 扩展目录 extend_path composer 目录 vendor_path 运行缓存目录 runtime_path 路由目录 route_path 当前模块目录 moudle_path 控制器
定义控制器即 controller控制器文件存放在 controller 目录下; 类名和文件名大小写保持一致并采用驼峰式首字母大写) ;
use think Controller;
class Index extends Controller
继承控制器基类可以更方便使用功能但不是必须的: 系统也提供了其它方式在不继承的情况下完成相同功能; 前面我们知道如果是一个单词首字母大写比如 class Index; URL 访问时直接 public/index 即可;那么如果创建的是双字母组合比如 class Helloworld; URL 访问时必须为: public/hello_world; 如果你想原样的方式访问 URL则需要关闭配置文件中自动转换: url convert false, 此时URL 访问可以为: public/Helloworld; 如果你想改变根命名空间 app 为其它可以在根目录下创建.env 文 然后写上配对的键值对即可app_namespaceapplication;
渲染输出
?php
namespace app\index\controller;
use think\facade\Env;class HelloWorld{public function test1(){return view();}
}
配置在模块目录下controller同级目录创建view目录在该目录下创建相同控制器名的文件夹在控制器文件夹里创建 方法名.html 一 般来说正常页面都是 html 输出用于模版AJAX 默认为 json; 如果继承了基类控制器那么可以定义控制器初始化方法: initialize(); initialize()方法会在调用控制器方法之前执行:且不能用return返回否则无效果
protected function initialize(){
//parent::initialize();
echo init;
} 前置操作
1. 继承 Controller 类后可以设置一个$beforeActionList 属性来创建前置方注
use think\Controller;
class Before extends Controller
{protected $beforeActionList[first,second[exceptone],third[onlyone]];protected function first(){echo first;}protected function second(){echo second;}protected function third(){echo third;}public function index(){if ($this-flag){$this-success(注册成功,../);}else{$this-error(失败);return index;}}
public function one(){return one;
}
public function two(){return two;
}
public function three(){return three;
}
}
此时我们可以分别 URL 访问不同的方法来理解前置的触发执行;
跳转和重定向
Controller 类提供了两个跳转的方法success(msg,ur)和 error(msg) protected $flag false;public function index(){if ($this-flag){$this-success(注册成功,../);}else{$this-error(失败);return index;}}
成功或错误有一个固定的页面模版:thinkphp/tpl/dispatch jump 在 app.php 配置文件中我们可以更改自己个性化的跳转页面; //默认跳转页面对应的模板文件 dispatch success tmpl Env::get(think path)
Controller类提供了 _empty()方法用于对应不存在的方法访问
public function _empty($name){return 不存在方法.$name;}
控制器不存在的对应
?php
namespace app\index\controller;
use think\Request;
class Error{public function index(Request $r){return 不存在.$r-controller();}
}?
模型定义
1. 在 MVC 中,我们已经使用过 Controller(c),View(V),剩下一个就是 Model(M); Mode1 即模型就是处理和配置数据库的相关信息; 2 .在项目应用根目录创建 model 文件夹并且创建 User.php;
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/88090.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!