PHP笔记
文章平均质量分 64
ShaoYanlun
一个不断学习和研究,web前端和网站搭建的技术菜鸟.
展开
-
ThinkPHP 5.0安装
ThinkPhP5.0安装的三种方式: 一、源代码包安装 1、在thinkphp官网(www.thinkphp.cn) 下载 完整版本的TP5.0 2、解压压缩包 3、将解压文件拷贝网站根目录 (www) 4、重命名 tp5 5、地址栏访问 http://localhost/tp5/public/ 二、 composer 1、官网 composer是 PHP 用来管理...原创 2018-05-27 12:50:16 · 1524 阅读 · 0 评论 -
模板
一、模板标签 1、普通标签 // 模板引擎普通标签开始标记 'tpl_begin' => '<{', // 模板引擎普通标签结束标记 'tpl_end' => '}>', <h2>{$str}</h2> 2、标签库标签 // 标签库标签开始标记 'taglib_begin' => '{', /...原创 2018-06-16 10:41:57 · 177 阅读 · 0 评论 -
输出数据隔行变色
//输出奇偶 {volist name="data" id="val" mod='2'} {eq name='mod' value='0'} <p style="color: #2aabd2;">{$key}{$val.id}{$val.username}{$val.password}</p>{/eq} {eq name='mod'...原创 2018-06-16 10:51:35 · 470 阅读 · 0 评论 -
数据库增删改操作
一、增加操作 1、插入单条数据 // 数组中的字段名 必须和数据库中的字段名一致 $data=["name"=>"张三","pass"=>"123","age"=>18,]; $code=Db::table("user")->insert($data); $code=db("user&quo原创 2018-06-09 15:02:40 · 313 阅读 · 0 评论 -
事务机制
一、自动控制事务 Db::transaction(function(){ // 删除一条数据 Db::table("user")->delete(40); // 删除数据 Db::table("user")->deletes(); }); 二、手动控制事务 (***) // 开启事务 Db::star...原创 2018-06-09 15:43:33 · 560 阅读 · 0 评论 -
验证器的使用一
一、创建数据库 字段:id,username,password,time二、视图页面<form action="{:url('index/index/insert')}" method="post"> <p> username: <input type="text" name="username" id=&quo原创 2018-06-17 00:11:45 · 286 阅读 · 0 评论 -
验证器的使用
一、验证器的使用方法 //数据添加处理集合验证器public function yzq(){ //接受用户提交的数据 $data=input('post.'); //实例化验证器 $validate = new Validate([ 'username'=>'require|length:6,12', 'password'=...原创 2018-06-17 11:31:50 · 401 阅读 · 0 评论 -
数据模型的创建
一、新建数据模型 1) 手动新建 a、打开前台模块(C:\wamp64\www\tp5\application\index) 新建model目录 b、在model目录下 新建 User.php // 声明命名空间 namespace app\index\model; // 导入系统的数据模型 use think\Model; // 声明user模型 class Us...原创 2018-06-09 23:54:20 · 3096 阅读 · 0 评论 -
数据模型的增删改查
一、查询操作 1、单条数据 // get方法 // 使用数字 $res=User::get(1); // 默认主键 // 使用数组 $res=User::get(["name"=>'yzmedu3']); // 默认查找用户名 // 使用闭包函数 $res=User::get(function($quer...原创 2018-06-10 15:38:37 · 394 阅读 · 0 评论 -
获取器和修改器的使用
一、获取器 1、数据模型 // sex 的获取器 public function getSexAttr($val){ switch ($val) { case '0': return "未知"; break; case "1": return "男"; break; case "2": return "女"; break;...原创 2018-06-10 16:23:18 · 518 阅读 · 0 评论 -
缓存的使用方法
缓存的使用方法: a) 缓存的作用: 减少数据库压力 用户交互比较 提高访问速度 b) TP对缓存的支持 支持的缓存类型包括file、memcache、wincache、sqlite、redis和xcache。 c) 缓存设置(C:\wamp64\www\tp5\application\config.php) 'cache' ...原创 2018-06-18 16:12:30 · 559 阅读 · 0 评论 -
Session信息的操作
Session信息的操作: 1、设置session Session::set('name','云知梦'); session('name','100'); 2、获取session Session::get('name'); session('name'); # 返回值 如果获取成功 返回获取到的值 如果失败 NULL 3、判断是否设置 Session::has('name1...原创 2018-06-18 16:22:29 · 555 阅读 · 0 评论 -
Cookie信息的操作
1、设置Cookie Cookie::set('name','shaoyanlun'); Cookie::set('info','hello world',50); cookie('time','2017-10-25'); cookie('age',5,50); 2、获取Cookie Cookie::get('name'); cookie('time'); # 获取C...原创 2018-06-20 16:16:40 · 195 阅读 · 0 评论 -
分页操作
一、控制器中如何书写 // 查询数据 // 分页效果 $data=Db::table('user')->paginate(3); // 简化的分页效果 $data=Db::table('user')->paginate(3,true); // 分配数据 $this->assign('data',$data); // 加载页面 return $th...原创 2018-06-20 16:18:16 · 215 阅读 · 0 评论 -
文件上传
一、单文件上传 1、页面 <form action="{:url('upload')}" method="post" enctype="multipart/form-data"> <p> File: <input type="file" name="file" id=""&原创 2018-06-20 16:24:16 · 209 阅读 · 0 评论 -
数据库查询操作
一、table方法查询数据 // 查询所有数据 // SELECT * FROM `user` $data=Db::table("user")->select(); // 查询一条数据 // SELECT * FROM `user` LIMIT 1 $data=Db::table("user")->find(); 二...原创 2018-06-09 12:20:35 · 1283 阅读 · 0 评论 -
ThinkPHP5连接数据库
ThinkPHP5连接数据库: 方法一、配置文件定义 a、配置文件目录 C:\AppServ\www\tp5\application\database.php b、如何配置 return [ // 数据库类型 'type' => 'mysql', // 服务器地址 'hostname' =>...原创 2018-06-01 17:12:59 · 1950 阅读 · 0 评论 -
ThinkPHP5请求和响应
ThinkPHP5请求和响应: 一、如何获取请求类 1、系统函数 $request=request(); 2、系统Request类 use think\Request; // 因为Request类属于单例模式 所以 不能直接new $reques...原创 2018-05-31 17:01:56 · 1222 阅读 · 0 评论 -
PHP中跨控制前调用方法(二)
PHP方法跨控制器调用: 1、使用命名空间 $model=new \app\admin\controller\Index; echo $model->index();(注:index()为 \app\admin\controller\Index 中的一个方法) 2、使用use use \app\admin\contro...原创 2018-05-27 13:21:27 · 582 阅读 · 0 评论 -
PHP中跨控制前调用方法(一)
PHP方法跨控制器调用: 1、使用命名空间 $model=new \app\admin\controller\Index; echo $model->index();(注:index()为 \app\admin\controller\Index 中的一个方法) 2、使用use use \app\admin\controll...原创 2018-05-27 13:34:27 · 721 阅读 · 0 评论 -
ThinkPHP项目的执行流程
ThinkPHP项目的执行流程: 一、入口文件(C:\wamp64\www\tp5\public\index.php) 作用: 1)定义目录常量 2)加载框架引导目录 二、加载框架的引导文件(C:\wamp64\www\tp5\thinkphp\start.php) 作用: 1) 引导基础文件 2) 对应用进行运转 三、加载框架的基础引导文件(C:\wamp64...原创 2018-05-27 13:41:26 · 4306 阅读 · 0 评论 -
ThinkPhP5.0配置
ThinkPhP5.0配置:1、配置文件格式 ThinkPHP支持多种格式的配置格式,但最终都是解析为PHP数组的方式。2、配置的形式 1、惯例配置 a、惯例配置目录 C:\wamp64\www\tp5\thinkphp\convention.php 2、应用配置 a、应用配置目录 C:\wamp64\www\tp5\application\config.php 3、扩...原创 2018-05-27 14:06:01 · 395 阅读 · 0 评论 -
ThinkPHP5.0中入口文件的管理
ThinkPHP5.0中入口文件的管理: 一、前后台分离 a、在网站public目录下(C:\AppServ\www\tp5\public) 新建admin.php b、打开admin.php <?php // 定义应用目录 define('APP_PATH', __DIR__ . '/../application/'); // 加载框架引导文件 require __...原创 2018-05-28 00:08:24 · 6418 阅读 · 1 评论 -
ThinkPHP设置路由-动态单个注册(一)
ThinkPHP设置路由-动态单个注册: 一、设置路由格式 Route::rule('路由表达式','路由地址','请求类型','路由参数(数组)','变量规则(数组)') 二、设置路由文件 C:\AppServ\www\tp5\application\route.php 三、设置方法 // 引入系统类 use think\Route; // 定...原创 2018-05-28 00:32:42 · 1025 阅读 · 0 评论 -
ThinkPHP设置路由-动态批量注册(二)
ThinkPHP设置路由-动态批量注册: 一、路由-动态批量注册 1、基本格式 Route::rule([ '路由规则1'=>'路由地址和参数', '路由规则2'=>['路由地址和参数','匹配参数(数组)','变量规则(数组)'] ],'','请求类型','匹配参数(数组)','变量规则'); 2、使用 Route::rule([ ...原创 2018-05-28 16:23:26 · 878 阅读 · 0 评论 -
ThinkPHP控制器的创建(一)
ThinkPHP控制器的创建:一、使用文件命名的方法 1、在前台控制器目录下(C:\wamp64\www\tp5\application\index\controller) 新建控制器文件 User.php 2、User.php文件中如何书写 <?php // 声明命名空间 namespace app\index\controller; // 声明控制器 class User{ ...原创 2018-05-29 10:54:28 · 4892 阅读 · 0 评论 -
ThinkPHP控制器的使用(二)
ThinkPHP控制器的使用: 一、控制器如何加载页面 1、系统View类 $view=new \think\View; return $view->fetch(); use think\View; $view=new View(); return $view->fetch(); 2、系统Controller类 a、需要继承系统控制器类 ...原创 2018-05-29 11:10:41 · 339 阅读 · 0 评论 -
ThinkPHP修改成功和失败的模板页面
ThinkPHP页面跳转笑脸和哭脸的修改: 1、找到目录文件: C:\wamp64\www\tp5\thinkphp\library\traits\controlle\Jump.php 2、找到 <?php switch ($code) {?> <?php case 1:?> <h1>:)&l...原创 2018-05-29 11:56:53 · 1811 阅读 · 0 评论 -
Thinkphp5自定义标签
Thinkphp5自定义标签: 一、自定义标签的方法名称: 形如:标签名称为jquery 则它对应的标签实现函数为 tagJquery() (注意tag为前缀然后使用驼峰式写法) 一、步骤: 1)、创建Mytag.php文件 (注意命名空间) 创建My.php文件:路径appl...原创 2018-05-31 11:16:15 · 1590 阅读 · 0 评论 -
Thinkphp5页面加载的三种方式
Thinkphp5页面加载的三种方式: 方式一、系统函数 public function index(){ return view(); } 方式二、系统view类 public function i...原创 2018-05-31 13:26:06 · 2439 阅读 · 1 评论 -
软删除和时间戳
一、时间戳 1、系统支持自动写入创建和更新的时间戳字段 1) 在配置文件中设置 // 自动写入时间戳字段 'auto_timestamp' => true, 2) 在数据模型中设置 // 设置自动写入时间戳 protected $autoWriteTimestamp=true; 2、可以设置字段默认值 // 增加时间的字段 protected $createTim...原创 2018-06-14 10:47:14 · 1484 阅读 · 0 评论 -
视图
视图模块笔记: a) 加载页面 1、继承系统控制器类 return $this->fetch(参数1,参数2,参数3,参数4); 参数1(字符串): 模板渲染 参数2(数组): 模板赋值 参数3(数组): 模板替换 参数4(数组): 2、使用助手函数 // return view(); # view的参数与fetch相同 3、使用view类 (不建议) ...原创 2018-06-14 12:50:20 · 220 阅读 · 0 评论 -
验证码的实现
一、首先判断系统是否支持验证码 在vendor/topthink/think-captcha 二、使用 1) 页面中 <form action="{:url('check')}" method="post"> <!-- {:captcha_img()} --> <img src="{:captcha_src()}"...原创 2018-06-20 16:58:44 · 421 阅读 · 0 评论