thinkphp5控制器】的更多相关文章

// 定义应用目录 define('APP_PATH', __DIR__ . '/../app/'); // 定义配置文件目录和应用目录同级 define('CONF_PATH', __DIR__.'/../config/'); // 修改应用类库命名空间(默认是app) 5.08+版本 define('APP_NAMESPACE','app'); 定义: //application\index\controller\Index.php namespace app\index\controlle…
假设定义了HelloWorld控制器 url访问地址就是:http://localhost/index.php/index/hello_world,与此同时view目录下的模板文件夹要命名为hello_world,否则会提示找不到模板 如果你期望通过 http://localhost/index.php/index/HelloWorld 可以访问,那么必须关闭URL的自动转换设置 // 是否自动转换URL中的控制器和操作名 'url_convert' => false,…
使用 whereOr whereIn();  (来自 ★C̶r̶a̶y̶o̶n-杭州 ) 为什么不用数组啊,array('eq', array(1,2),'or') (来自 supler)…
传一维数组传值 $array=['id'=>40,"cat_name"=>"明星产品"]; $MenuCats_info=json_encode($array,JSON_UNESCAPED_UNICODE); $this->assign([ 'MenuCats_info'=>$MenuCats_info, ]); return view('index'); html里 <!DOCTYPE html> <html> &l…
最近初步接触redis,结合thinkphp5与redis,写了一个用户注册的基础例子,用于学习. 这个例子是结合了兄弟连的redis视频,最后两节的内容写的:https://study.163.com/course/courseMain.htm?courseId=265010 这个例子实现了以下功能: (1)用户注册(2)用户登陆(3)redis+thinkphp5的数据的增加,修改,删除(4)redis翻页功能(5)用户的关注列表+粉丝列表 案例需要搭建的环境需求:(1)thinkphp5(…
在建立网站的时候,你通常想着把一些共有的方法提取出来,放入一个控制器内,如果你是将业务逻辑写入了构造函数里面,那么就得注意了. 在thinkphp5.0当中,有一个初始化的方法,类似于构造函数,那就是_initialize(). 但是如果你在父类和子类当中同时使用该方法时,会将父类的_initialize()方法覆盖掉. 如下:我贴出部分代码: class Admin extends CommonMethod { private $adminModel; public function _ini…
Thinkphp5.0 控制器向视图view的赋值 方式一(使用fetch()方法的第二个参数赋值): <?php namespace app\index\controller; use think\Controller; class Index extends Controller { public function study_view(){ return $this->fetch('study_view',[ 'id' => 1, 'name' => 'li lei', 'a…
ThinkPHP5.0框架开发--第5章 TP5.0 控制器 第5章 TP5.0 控制器 ============================================== 上次复习 1.路由 a.有利于SEO优化 b.简洁方便记忆 2.路由模式 1.普通模式(PATHINFO) http://www.tp.com/index.php/Index/Index/index 2.混合模式 支持PATHINFO和路由 3.强制模式 只支持路由模式 4.模式切换和配置文件有关 // 是否开启路…
thinkphp5空控制器和空操作 一.总结 1.空控制器和空操作用:空控制器和空操作都是为了防止网站上的用户恶意输入,网站上线的话必须加上, 2.空操作:空操作就是在一般的控制器里面加上一个 _empty()方法 3.空控制器:空控制器就是新建一个名为Error的控制器,空控制器里面也要有空方法 4.thinkphp支持命令行:thinkphp支持命令行,命令行创建的控制器可以多几个方法,和路由一一对应 5.空控制器和空操作里面的操作:都是直接重定向到index页面 二.thinkphp5空控…
thinkphp5多级控制器是什么?怎么使用? 一.总结 1.多级控制器是让控制器的级数变成多级,也就是controller目录下可以新建其它目录. 2.使用的话注意目录下的控制的的命名空间(加上目录名)(namespace app\index\controller\one;)和访问方式(文件名.控制器名)(http://serverName/index.php/index/one.blog/index)(不开自动定位控制器的情况) 二.多级控制器 新版支持任意层次级别的控制器,并且支持路由,例…
这一段在用thinkPHP5开发微信小程序接口的时候,在同一个控制器一个方法中存入session,在另一个方法中取出session,一直都是无法取出. 查阅各种资料得到原因:thinkPHP5里面的session是给浏览器用的,非浏览器的方式是没有办法访问到那个session的,只能用其他方式来代替session. 对策: 1.(推荐)使用TP5自带的缓存方法 可以完美代替session,甚至可以每条手动设置时间,比session更方便, (用过tp5自带session的肯定知道,session…
今天碰到了一个比较坑爹的问题,我的控制器的名字是用驼峰命名的,但是却给我报错,如下: 怎么解决呢? 看我的视图,同样是驼峰命名,此时只要将其改为auth_group这样的方式就可以了. 注意:url地址栏访问的方式是也是需要下划线这种方式. 那如果要用驼峰命名来访问应该怎么办呢?找到config.php文件,然后这样改就OK了…
入口文件index.php: // 定义应用目录 define('APP_PATH', __DIR__ . '/../application/'); // 加载框架引导文件 require __DIR__ . '/../thinkphp/start.php'; 引导文件start.php: namespace think; // 加载基础文件 require __DIR__ . '/base.php'; // 执行应用 App::run()->send(); 基础文件base.php: defi…
默认情况下目录结构 application ->admin->controller->class.php 当项目比较多的时候,目录下控制器文件较多,考虑按模块增加一层目录 application->admin->controller->blog->class.php 此时,名称空间需为 app\admin\controller\blog; 访问路径 admin/blog.class/index 以上路径可以访问控制器,但是加载默认视图,会去找这个路径 admin/…
1.在application\index\controller\文件夹里新建User.php <?php namespace app\index\controller; class User{ public function index(){ return('我是User控制器的index方法'); } } 2.在application\index\controller\文件夹下的Index.php调用User的控制器 <?php namespace app\index\controller;…
入口文件后加一个空格就行了 1,首先cd到站点目录public下,我的入口文件是默认的index.php,然后执行以下命令,, 2,php要加入环境变量,index.php后面加空格,然后是模块,控制器,方法名 php index.php home/index/test…
一.控制器访问 1.命名空间 命名空间与目录路径对应. 如:路径位置为:application/index/controller/Index.php 其文件的命名空间应为:app\index\controller 命名空间解释: app对应application目录(在入口文件mypro/public/index.php中定义的,可根据需求自定义修改) index对应index模块 controller对应控制器位置 2.定义类 类名直接使用该控制器名即可,不需要用Controller结尾 如:…
今天我们就来创建一个控制器: <?php namespace app\index\controller; use think\Controller; class Test extends Controller{ public function test() { }…
以user为例,调用user.php的get_number()方法 一.不管是调用自身模块还是其他模块app\model\User.php写法不变 <?php namespace app\index\model; use think\Model; class user extends Model { public function get_member(){ return 3; } } 二.user控制器调用user模块(即控制器调用自身模块) <?php namespace app\inde…
公共css代码 <style> .layui-upload-img { width: 90px; height: 90px; margin: 0; } .pic-more { width:100%; left; margin: 10px 0px 0px 0px;} .pic-more li { width:90px; float: left; margin-right: 5px;} .pic-more li .layui-input { display: initial; } .pic-mor…
空模块 'exception_handle' => function(Exception $e){ // 参数验证错误 if ($e instanceof \think\exception\ValidateException) { return json($e->getError(), 422); } // 请求异常 if ($e instanceof \think\exception\HttpException && request()->isAjax()) { ret…
public function _initialize() { parent::_initialize(); } public function __construct() { $; parent::__construct(); } 和构造方法一样,但是在thinkphp中,是先实行 _initialize()方法再实行__construct()方法! 记得继承父类的构造方法! 不然他先一本类的构造方法为最优先,不会理会之前写的,跟初始化控制器也是一样. 如果你要在初始化控制器上或者初始化方法上…
//当前模块url地址 $request= Request::instance(); $module_name=$request->module(); $controller_name=$request->controller(); $action=$request->action(); $active_url=$module_name.'/'.$controller_name.'/'.$action; echo $active_url;exit; 打印结果:index/GetOss/g…
tp5.1 采用命名空间的方式进行调用.…
构造函数中子类的构造方法会覆盖父类的构造方法,如果要继承父类的构造方法可以加入parent::__construct(); 例子: //另一种方法,使用构造函数初始化 public function __construct(){ //使用父类的构造函数,也就是调用Controller类的构造函数 parent::__construct(); if(session('username')==null){ $this->error('请先登录','login/login'); } } initial…
<?php namespace app\index\controller; use think\Db; use think\Controller; class Base extends Controller { public function _initialize(){ $no_check = array("login","login_check"); $request = \think\Request::instance(); echo $request-…
对于ThinkPHP5.0以前的版本,助手函数全部是单字母函数,但到ThinkPHP5之后,使用如下函数来代替单字母函数: 最常用: /** * 实例化Model * @param string $name Model名称 * @param string $layer 业务层名称 * @param bool $appendSuffix 是否添加类名后缀 * @return \think\Model */if (!function_exists('model')) { function model…
ThinkPHP V5.——为API开发而设计的高性能框架 ThinkPHP5..0版本是一个颠覆和重构版本,采用全新的架构思想,引入了很多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载. GitHub项目地址:点击访问 ThinkPHP5在保持快速开发和大道至简的核心理念不变的同时,PHP版本要求提升到5.,对已有的CBD模式做了更深的强化,优化核心,减少依赖,基于全新的架构思想和命名空间实现,是ThinkPHP突破原有框架思路的颠覆之作,其主要特性包括: 基于命名空间和众多PH…
最近打算开一个自己的CMS后台轮子,框架选择了thinkphp 5 (别问我为什么选择这个框架)然后想边开发边记录一下,方便自己方便他人 进入正题 1.数据库设计 一共三张表 post文章表这个就不贴了(在这里没有使用到) 主要是以下两张 一张是存储标签的tag表, 另一张是关系表用于关联标签与文章 2.代码部分 主要我们使用到了thinkphp5的多对多关联(想详细了解的可以看这里 多对多关联) 文章表对应的模型 model/Posts.php <?php namespace app\admi…
http://www.kancloud.cn/manual/thinkphp5/118006 www  WEB部署目录(或者子目录) ├─composer.json         composer定义文件 ├─README.md             README文件 ├─LICENSE.txt           授权说明文件 ├─application           应用目录 │  ├─common             公共模块目录(可以更改) │  ├─runtime    …