![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
php
文章平均质量分 88
南风number
好记性不如烂笔头
展开
-
PHP-laravel框架一3
一、响应【重点】在laravel中,响应正常情况下有2个类型:常规的直接响应,另外一个是ajax的响应。其中展示视图以及直接响应字符串都属于常规的响应。例如:常规响应展示视图:return view(‘welcome’);直接返回某个字符串:return ‘hello world’;提示:在laravel框架中,不允许响应布尔值。1、ajax请求的响应语法:return response() -> json(需要json输出的数据); //数据是数组格式,对象也可以案例:创建一原创 2022-03-09 13:57:03 · 1092 阅读 · 0 评论 -
PHP-laravel框架一2
一、模型操作(AR模式)【理解】Laravel 自带的 Eloquent ORM 提供了一个美观、简单的与数据库打交道的 ActiveRecord 实现,每张数据表都对应一个与该表进行交互的“Model模型”,模型允许你在表中进行数据查询,以及插入、更新、删除等操作。1、定义模型(1)定义位置定义模型的位置,默认是在app目录下面:(2)命名规则本身laravel对模型的命名没有严格的要求,一般采用 表名(首字母大写).php比如:Member.php User.php Goods.原创 2022-02-23 14:08:30 · 943 阅读 · 0 评论 -
PHP-laravel框架一1
原创 2022-02-21 15:50:44 · 9216 阅读 · 0 评论 -
PHP-电商项目-8
es原创 2022-01-13 14:20:05 · 226 阅读 · 0 评论 -
PHP-电商项目-7
聚合支付解决方案1.解决方案介绍聚合支付,是融合了多方支付通道的平台,相对于支付宝、微信等第三方支付平台而言,聚合支付属于在第三方支付平台基础上,进行了技术融合的第四方平台。本解决方案,是基于PC网站,集成聚合支付中的扫码支付方式,实现支付宝、微信同码的一种基础方案。聚合支付原理图:2.开通聚合支付服务很多平台都提供了聚合支付服务,以下使用ping++聚合支付。2.1 注册账号访问 Ping++官网,注册账号并登录。提交注册申请后,请前往注册邮箱,在邮件中点击注册链接,创建密码后进入管理原创 2022-01-12 16:05:26 · 520 阅读 · 0 评论 -
PHP-电商项目-6
一、结算页面1、判断登录整合模板(Order控制器create方法 getOrderInfo.html -> create.html)创建Order控制器,继承Base控制器结算页需要登录才能访问,修改order控制器create方法,判断登录,并设置返回的url修改Login控制器dologin方法,登录成功之后,先获取返回的url修改Login控制器qqcallback方法,登录成功之后,先获取返回的url、从购物车跳转结算页购物车列表页view/cart/index.原创 2022-01-12 14:22:47 · 476 阅读 · 0 评论 -
PHP-电商项目-5
一、购物流程概述购物车作用:存放想要购买的商品,最后一次性结算。电商网站购物流程:二、购物车原理1、购物车数据的保存位置Cookie:存储在浏览器,可以长时间存储,直到过期或者被用户清除。Session:存储在服务器,无法长久存储,关闭网站或浏览器,数据被清空。数据表:存储在服务器,可以永久保存。缓存:存储在服务器,可以长时间存储,直到过期。未登录:可以将购物车数据存储在cookie。登录后:将购物车数据存储在数据表,并和用户关联。在用户登录时,将cookie中的购物车数据迁移到数据原创 2021-12-29 10:02:03 · 563 阅读 · 0 评论 -
PHP-电商项目-4
十九、添加完整商品数据使用后台管理系统,添加完整商品数据。用于测试及前台页面展示。添加三级商品分类(一般有现成的测试数据)添加品牌(在一个三级分类下添加至少一个品牌)添加商品类型(商品模型)(至少两个规格,每个规格至少两个规格值。至少两个属性)添加商品(选择分类、选择品牌、上传logo图片、上传相册图片、选择商品类型、每种规格至少选择两个规格值)一、前台模板整合以home模块作为前台网站模块。设置默认模块:application/config.php// 默认模块名'default_原创 2021-12-21 19:58:50 · 1024 阅读 · 0 评论 -
PHP-电商项目-3
规范具体场景实际举例小写+下划线目录名、除了类文件之外的其他文件、函数名、配置名称、数据表名和字段名、路由url、请求参数名(控制其名称两个单词)视图目录、模板文件、默认访问url中控制器名;(关联模型)with方法参数大写+下划线常量常量大驼峰(首字母大写)类名、类文件名控制器类、模型类、其他自定义类小驼峰(首字母大写)类的方法、类的属性关联模型方法是小驼峰商品相关数据表1、商品分类、商品品牌、商品、商品相册2、商品、商品模型原创 2021-12-17 13:45:19 · 800 阅读 · 0 评论 -
PHP-电商项目-2
六 RBAC权限管理1、RABC概念和原理RBAC:全称叫做Role-Based Access Control,中文翻译叫做基于角色的访问控制。其主要的作用是实现项目的权限控制。效果:让不同的管理员,能够访问的页面不一样。比如运营人员 只能看到运营相关模块。财务人员只能看到财务相关模块。传统权限管理:RBAC权限管理:RBAC权限管理:权限的管理相对规范,角色拥有的权限可以按照一定的标准定义好。新增管理员,只需要指定角色,即可拥有对应的权限。2、数据表设计基本数据表:管理员表、角色表原创 2021-12-07 19:25:45 · 505 阅读 · 0 评论 -
PHP-电商项目-1
一、项目介绍1、项目开发流程产品经理:进行需求分析,整理需求文档(产品原型文档)(需求评审)UI设计:根据需求文档,设计每一个页面,出设计图前端:根据需求文档和设计图,编写前端html代码后端:技术选型、架构设计、数据库设计、(开发文档)、开发项目功能、自测(单元测试)测试:编写测试用例,逐个进行测试。(分多轮)上线:项目部署到线上服务器2、主要电商模式2.1 B2B–企业对企业B2B( Business to Business)是指进行电子商务交易的供需双方都是商家(或企业、公司)原创 2021-11-30 09:21:28 · 1681 阅读 · 2 评论 -
RestFul接口设计
一、接口编程1、背景随着互联网的发展,尤其是移动互联网为代表的Web3.0时代,客户端层出不穷,以APP、微信、PC浏览器为代表,服务端业务逻辑基本一致的,那么有没有一种方式可以做到“服务端一次编写,客户端随时接入”呢流行的方案就是“接口编程”2、接口编程API(Application Programming Interface,应用程序编程接口),程序之间交互数据的一种方式。以浏览器和服务器之间的数据交互(ajax请求)为例:请求方式:get方式 post方式请求协议:http协议 ht原创 2021-11-25 16:30:50 · 6088 阅读 · 2 评论 -
ThinkPHP框架-4
二十五、分页功能原创 2021-11-23 14:54:49 · 352 阅读 · 0 评论 -
ThinkPHP框架-3
十九、修改操作(手册–模型–更新)(CURD create update read delete)1、更新一条数据原创 2021-11-20 14:34:42 · 1405 阅读 · 0 评论 -
ThinkPHP框架-2
十、ThinkPHP框架中的模型模型的作用、处理业务数据、与数据库进行交互。1、导入数据表新建tpshop数据库(create database tpshop character set utf8 collate utf8_general_ci)导入数据表说明:如果导入sql文件时,有报错,提示类似“不能使用innodb”解决办法:打开mysql配置文件,修改如下重启mysql即可如果重启失败,找到mysql的安装目录下data目录,删除以ib开头的文件(可以先备份)再重启。2、原创 2021-11-16 20:03:26 · 1784 阅读 · 0 评论 -
ThinkPHP框架-1
一、框架概述1、什么是框架框架就是一些代码类、方法(函数)、变量、常量的集合,这些代码是功能结构性的代码(并非业务代码)。业务代码其实就是具体的一些模块的增删改查逻辑代码。使用框架开发项目,有便于代码重用、开发效率高、代码规范好、便于功能扩展等优点2、php中的主流框架1、Zend Framework框架,PHP官方框架2、YII框架,又叫易框架3、Symfony框架4、Laravel框架,市场使用较多。5、Codelgniter框架,简称CI框架6、ThinkPHP框架,简称TP框架原创 2021-11-14 10:23:17 · 1073 阅读 · 0 评论 -
PHP-Smarty
1.1 Smarty简介1.1.1 Smarty的引入1、为了分工合作,模板页面中最好不要出现PHP的代码2、需要将表现和内容相分离1.1.2 Smarty介绍1.2 自定义Smarty1.2.1演化一:(smarty生成混编文件)在模板中不能出现PHP界定符,标准写法如下:1、html代码<body>{$title}</body>2、PHP代码<?php$title='锄禾';require './1-demo.html';运行结果$t原创 2021-11-06 16:07:56 · 789 阅读 · 0 评论 -
PHP-文件上传
1.2 文件上传1.2.1 封装文件上传类1、在Lib目录下创建Upload.class.php<?php namespace Lib;class Upload{ private $path;//上传的路径 private $size;//上传的大小 private $type;//允许上传的类型 private $error;//保存错误信息 public function __construct($path,$size,$type){ $this->path=$原创 2021-11-02 14:52:34 · 113 阅读 · 0 评论 -
php-GD扩展
1.2 开启GD扩展GD库是用来处理图片的。使用GD库,首先在php.ini中开启gd扩展extension=php_gd2.dll开启以后就可以使用image开头的函数了。1.3 创建最简单的图片步骤1、创建画布2、给画布填充颜色(给画布分配的第一个颜色自动填充成背景色)3、显示图片<?php$img=imagecreate(200,100);//创建图片//var_dump($img);//resource(2) of type (gd)imagecolorallocat原创 2021-10-30 10:40:56 · 3008 阅读 · 0 评论 -
PHP-session
1.2 Session(会话)1.2.1 原理1、session是服务器端的技术2、session是基于cookie技术的第一次访问,服务器给客户分配一个空间,每个空间都有一个唯一的编号,比如All,将编号(All)放到响应头带回客户端,保存在cookie中。自己只能访问自己的session1.2.2 session操作1、默认情况下,会话不会自动开启,通过session_start()开启会话2、通过session_id()获取会话的编号3、通过$_SESSION操作会话4、会话可以原创 2021-10-20 19:55:11 · 159 阅读 · 0 评论 -
php-SQL封装
1.2 SQL封装每个功能都要写SQL语句,我们可以封装一个万能的方法来操作所有的表1.2.1 生成insert语句<?php$table='products';//表名//插入的数据$data['proid']='111';$data['proname']=钢笔;$data['proprice']=120;//第一步:拼接字段名$keys=array_keys($data);//获取所有字段名$keys=array_map(function($key){//在所有的字段名上添加原创 2021-10-09 17:00:41 · 338 阅读 · 0 评论 -
PHP之框架
1.2 框架目录1.2.1 创建目录结构原创 2021-10-07 20:19:48 · 227 阅读 · 0 评论 -
php MVC
1.2 MVC介绍1、MVC是一个编程思想,是一种设计模式2、思想:将一个功能分解成3个部分,M V CModel(模型):处理与数据有关的逻辑View(视图):显示页面Controller(控制器):处理业务逻辑小结:1、控制器用来接收请求2、以后不能直接请求模型和视图1.3MVC演化1.3.1 显示商品1、导入products表的数据2、将之前封装的MyPDO类拷贝到www目录站点下,改名为MyPDO.class.php,这个文件中只存放MyPDO类3、在站点下创建index.原创 2021-09-25 18:26:20 · 118 阅读 · 0 评论 -
php PDO
1.2 PDO介绍1.2.1 连接数据库方式方法一:mysql扩展[这种方式php7已经淘汰]方法二:mysqli扩展方法三:PDO扩展1.2.2 PDO 介绍PDO(PHP Data Object)扩展为PHP访问各种数据库提供了一个轻量级,一致性的接口。无论什么数据库,都可以通过一致性的接口去操作。1.2.3 开启PDO扩展开启PDO连接MySQL扩展extension=php_pdo_mysql.dll1.3 PDO核心类1、PDO类:表示PHP和数据库之间的一个连接2、PD原创 2021-09-25 17:22:08 · 137 阅读 · 0 评论 -
php start 五
1.2 命名空间1.2.1 介绍在一个大的项目中,可能会遇到同名的类、函数、常量,为了区分这些元素,我们可以将这些元素分别存放到不同的命名空间中。1、命名空间就是包,用来存放项目中的类、函数、常量2、通过namspace关键字来声明命名空间1.2.2 声明命名空间<?phpnamespce China;// 定义命名空间function getInfo(){ echo '我是中国人<br>';}namespace USA; //定义命名空间function getI原创 2021-09-18 13:31:33 · 86 阅读 · 0 评论 -
php start 四
1.2 自动加载类在项目开发中,因为一个文件中只能写一个类,并且执行过程中会有很多类的参与,如果一个一个的加载很麻烦,所以就需要一个机制实现在PHP执行过程中自动加载需要的类。1.2.1 书写类的规则1.一个文件中只能放一个类(必须)2.文件名和类名同名(必须)3.类文件以.class.php结尾(不是必须)1.2.2 手动加载类1、创建Goods.class.php页面2、创建Book.class.php页面3、创建Phone.class.php页面...原创 2021-09-14 13:57:56 · 160 阅读 · 0 评论 -
php start 三
1.2 多态多态:多种形态多态分为两种:方法重写和方法重载1.2.1 方法重写子类重写了父类的同名的方法注意事项:1、子类的方法必须和父类的方法同名2、参数个数要一致3、子类修饰的不能比父类更加严格1.2.2 方法重载在同一个类中,有多个同名的函数,通过参数的不同来区分不同的方法,称为方法重载...原创 2021-09-09 15:38:23 · 81 阅读 · 0 评论 -
php start 二
1.2 面向对象介绍1.2.1 介绍面向对象是一个编程思想。编程思想有面向过程和面向对象面向过程:编程思路集中的是过程上面向对象:编程思路集中在参与的对象上以去饭馆吃饭为例:面向过程:点菜——做菜——上菜——吃饭——结账——收拾面向对象:服务员、厨师、客人1.2.2 面向对象的好处1、多人合作方便2、减少代码冗余,灵活性高3、代码的可重用性发挥到极致4、可扩展性强多学一招OOP:面向对象编程(Object Oriented Programming,面向对象编程)OOA:面向对象原创 2021-09-08 16:12:17 · 134 阅读 · 0 评论 -
php中的mysql
1.2 连接数据库通过PHP做MySQL的客户端1.2.1开启mysqli扩展在php.ini中开启mysqli扩展extension=php_mysqli.dll开启扩展后重启服务器,就可以使用mysqli_函数了.1.2.2 连接数据库创建news数据库--创建表drop table if exists news;create table news( id int usigned auto_increment primary key comment '主键', title v原创 2021-09-06 16:18:56 · 115 阅读 · 0 评论 -
php start 一
1.1 PHP简介1.1.1 概述PHP是Hypertext Preprocessor的缩写,(超文本预处理器)是一种在服务器端运行的开源的脚本语言.LAMP组合(Linux,Apache,Mysql,PHP),这四个产品都是公开源代码的产品.php是一门语言,用来做业务逻辑apache为php提供了运行环境linux为Apache的运行提供了平台,mysql数据库用来存储数据多学一招:什么是wamp组合windows+apache+mysql+php1.1.2 五个基本概念1.静原创 2021-08-09 14:00:39 · 971 阅读 · 0 评论