自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 收藏
  • 关注

原创 十五、联表查询

联表要求至少得有2张表(除了自己连接自己,自联查询),并且还是存在关系的两张表。例如:可以建立2张表:文章表、作者表【以目前比较火的网站:知乎】。文章表(article):Id 主键Article_name 文章名称,varchar(50),notnullAuthor_id 作者(作者id),int,notnull作者表(author):Id 主键Author_name 作者名称,varchar(20),notnull①创建迁移文件#php artisan m

2020-06-01 23:24:20 591

原创 十四、缓存操作(记忆)

laravel为不同的缓存系统提供了统一的API(在框架中的写法)。缓存配置位于config/cache.php。在该文件中你可以指定在应用中默认使用哪个缓存驱动。laravel目前支持主流的缓存后端如Memcached和Redis等。主要方法:Cache::put();Cache::get();Cache::add();Cache::pull();Cache::forever();Cache::forget();Cache::has();系统默认是使用文件缓存,其缓存文件存储位置位于(s

2020-05-25 22:39:44 322

原创 十三、会话控制(记忆)

laravel项目中,会话控制有两种方法:a.利用会话控制方法控制类实现会话操作b.直接将用户的后话控制操作封装成一个auth认证类常见应用:增删改查session文件目录:storage/framework/sessions1.使用Session类控制器头部引用use illuminate\Support\Facades\Session;由于session类在app.php中已经定义好别名,所以在控制器中引入的时候可以直接use Session在控制器中直接引入sessionSes

2020-05-25 21:43:46 139

原创 十二、响应【重点】

在laravel中,响应正常情况下有2个类型:常规的直接响应,另外一个是ajax的响应其中展示视图以及直接响应字符串都属于常规的响应。例如:常规响应展示视图:return view(‘welcome’);直接返回某个字符串:return ‘hello world’;提示:在laravel框架中,不允许响应布尔值1.ajax请求的响应语法:return response() ->json(需要json输出的数据) //数据是数组格式,对象也可以案例:创建一个路由,访问对应的页面之后,

2020-05-20 22:07:51 397

原创 十一、数据表的迁移与填充【重点】

迁移:==创建数据表的操作+删除==数据表的操作+修改数据表的操作填充:往数据表里填充写入测试的数据(数据的插入操作)必须先迁移在填充1.数据的迁移操作在迁移过程中,操作可以分为两个部分:创建与编写迁移文件(创建&编写sql),执行迁移文件(执行sql)1.1、迁移文件的创建与编写已经存在的2个文件,如果不打算使用系统自带的认证模块的话需要删除掉。1.创建迁移文件案例:需...

2020-05-06 23:06:27 305

原创 十、验证码

验证码:captcha,全自动区分人和计算机的图灵测试。Composer方法安装代码依赖包:composer require mews/cpatcha修改配置文件:config/aap.php(大于5.1版本)配置:配置provider信息,添加一行信息:配置别名:aliases键,添加一个别名(大于5.1版本)如果(可选)需要定义自己的配置,则需要生成配置文件:php arti...

2020-04-27 22:49:18 235

原创 九、数据分页

laravel是直接调用模型的分页方法分页类在框架中的位置(了解):案例:使用分页功能实现当前member数据表的分页效果,由于数据量较少,可以烤炉每页显示一个记录,重点是分页的效果。分页效果的实现大概需要以下几步:查询符合分页条件的总的纪录;计算总的页数(总记录数/每页记录数,并且向上取 整);拼凑分页的链接;(核心)使用limit语法来限制分页的记录数;展...

2020-04-27 22:02:43 274

原创 八、文件上传(重点)

在laravel里面实现文件的上传是最简单的,压根不用引入第三方的类库,作者把上传作为一个简单的http请求看待的,使用时可以参考手册。(1)修改表结构,添加一个字段(2)创建添加数据的表单和路由表单还是可以使用test9页面提交路由可以使用test10路由条件:a.至少有一个input类型为file类型b.具有form标签,method必须为post,必须具备enctype属性...

2020-04-25 22:56:19 155

原创 七、自动验证

自动验证:前段会一些对表单的验证操作(通过JavaScript),但是JavaScript有些情况下是不好用的(例如禁用JavaScript)。因此后端也需要有一套类似的机制,能够在后端实现对用户提交的数据进行验证,这个就是后端的自动验证1.准备工作(1)使用test9表单页面,将其提交到test10路由创建test9,test10的路由(2)编写控制器方法编写test9页面,提交地址...

2020-04-16 16:21:05 318

原创 CSRF攻击【重点】

XSS、SQL注入1.什么是CSRF攻击CSRF是跨站请求伪造(Cross-site request forgery)的英文缩写Larave框架中避免CSRF攻击很简单,Larave自动为每个用户Session生成了一个CSRF Token。该Token可用于验证登录用户和发起请求者是否是同一个人,如果不是则请求失败【该原理和验证码的原理一样】Larave提供了一个全局帮助函数csrf_t...

2020-04-13 23:13:55 296

原创 视图

1.视图写在哪里注意:1.视图可以分目录管理,也有必要分目录管理2.视图的后缀在larave中一般都是“blade.php”3.视图的创建无法通过artisan来实现2.视图文件的命名与渲染(1)文件名习惯小写(建议小写)(2)文件名的后缀是“blade.php”(因为larave里面有一些模板引擎就是使用blade,可以直接使用标签语法{{KaTeX parse error: E...

2020-04-02 20:02:41 245

原创 数据库操作(增加,修改,查询,删除操作)

增加操作方法名:insert、insertGetId区别:insert方法:可以在数据中插入1条或多条数据,参数是一维/二维数组(键值)insertGetId方法:只能在数据表中插入1条数据,并且返回新增记录的主键id,参数是一维键值数组键值数组的名称就是数据表中对应的字段名语法:DB::table -> insert/insertGetId(数组);Member::inse...

2020-03-31 15:18:58 3644

原创 目录结构分析

一、app 包含Controller、Model、路由等在内的应用目录,大部分业务将在该目录下进行(1)Console 命令行程序目录Commands 包含了用于命令行执行的类,可在该目录下自定义类Kernel.php 命令调用内核文件,包含commands变量(命令清单,自定义的命令需加入到这里)和schedule方法(用于任务调度,即定时任务)Events 事件目录(2)Except...

2020-03-30 09:55:43 544

原创 数据库操作

Laravel框架提供2种数据库交互操作方式:①DB类操作数据库②模型操作数据库1、数据表的创建与配置建立数据库:建数据库的方式: ①sql语句 ②图形界面 phpMyAdmin Navicat (1)创建数据库和测试表一.语句创建create table member(id int primary key a...

2020-03-26 16:57:31 208

原创 控制器的使用

1.控制文件写在哪里?控制器主要的作用主要负责接收用户输入请求,调度模型处理数据最后利用视图展示数据其位置位于app/Http/ControllersController.php文件是框架的基类控制器。2.控制器文件如何命名文件的命名方式:大驼峰+Controller.php友情提示:在写的时候不要带“+”。例如:3.结构代码如何书写注意:其控制器基础结构代码,不需要自己去手...

2020-03-23 20:42:47 504

原创 Laravel入门使用(路由)

什么是路由路由:将用户的请求按照事先规划好的方案提交给指定的控制器,或者功能函数来进行处理。路由就是访问的地址形式。在laravel框架中路由要进行手动配置。访问就用路由路由配置文件Laravel的路由文件位置在routes/web.php中。所有的网址都会写在这里。1.打开web.php文件,默认根目录文件,一般为网站首页get:请求方法/:请求的URL路径(可省略)fu...

2020-03-19 17:59:21 386

原创 php开发环境配置、安装composer、部署laravel项目、启动方式

PHP开发环境配置1.phpstudy 选择php7.3.4nts2.开启扩展名php.ini配置文件需要开启的扩展:extension=php_openssl.dllextension=php_pdo_mysql.dllextension=php_mbstring.dllextension=php_fileinfo.dll(验证码代码依赖需要该扩展)extension=php...

2020-03-16 21:10:59 530

原创 一、3java选择结构

1.基本if条件结构if-else选择结构语法:if(条件){代码块1;}else{代码块2;}例如:pubilc class GetPrize{public static void main(String[] args){Scanner input=new Scanner(System.in);//从控制台获取张三的成绩System.out.print(“输入张三的jav...

2019-12-15 10:08:39 140

原创 一、4java循环结构

Java 循环结构 - for, while 及 do…while顺序结构的程序语句只能被执行一次。如果您想要同样的操作执行多次,,就需要使用循环结构。Java中有三种主要的循环结构:while 循环do…while 循环for 循环在Java5中引入了一种主要用于数组的增强型for循环。while 循环while是最基本的循环,它的结构为:while( 布尔表达式 ) {//...

2019-12-15 10:08:18 80

原创 一、5java数组

Java 数组数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。Java 语言中提供的数组是用来存储固定大小的同类型元素。你可以声明一个数组变量,如 numbers[100] 来代替直接声明 100 个独立变量 number0,number1,…,number99。本教程将为大家介绍 Java 数组的声明、创建和初始化,并给出其对应的代码。声明数...

2019-12-15 10:07:55 146

原创 一、9java异常处理

Java 异常处理异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error;如果你用System.out.println(11/0),那么你是因为你用0做了除数,会抛出 java.lang.ArithmeticException 的异常。异常发生的原因有很多,通常包含以下几大类:...

2019-12-15 10:07:31 76

原创 一、7java面向对象编程

1.类的定义定义类其实在定义类中的成员(成员变量和成员函数)。class Person {String name;int age;void speak(){System.out.println(“My name is " + name);System.out.println(“I am " + age + " years of age”);}}2.创建对象,使用对象class...

2019-12-15 10:06:58 84

原创 一、7(7)java面向对象编程{包}

Java 包(package)为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间。包的作用1、把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用。2、如同文件夹一样,包也采用了树形目录的存储方式。同一个包中的类名字是不同的,不同的包中的类的名字是可以相同的,当同时调用两个不同包中相同类名的类时,应该加上包名加以区别。因此,包可以避免名字冲突。3、包也限定了访问权...

2019-12-15 10:06:26 82

原创 一、7(6)java面向对象编程{接口}

Java 接口接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。接口无法被实例化,但是可以被实...

2019-12-15 10:05:53 86

原创 一、7(5)java面向对象编程{封装}

Java 封装在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,...

2019-12-15 10:05:31 151

原创 一、7(4)java面向对象编程{抽象类}

Java 抽象类在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。也是因为这个原因,通常在设计阶段决定要不要设计...

2019-12-15 10:04:57 109

原创 一、7(3)java面向对象编程{多态}

Java 多态多态是同一个行为具有多个不同表现形式或形态的能力。多态就是同一个接口,使用不同的实例而执行不同操作,如图所示:多态性是对象多种表现形式的体现。现实中,比如我们按下 F1 键这个动作:如果当前在 Flash 界面下弹出的就是 AS 3 的帮助文档;如果当前在 Word 下弹出的就是 Word 帮助;在 Windows 下弹出的就是 Windows 帮助和支持。同一个事件...

2019-12-15 10:04:26 57

原创 一、7(2)java面向对象编程{重写和重载}

Java 重写(Override)与重载(Overload)重写(Override)重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。重写方法不能抛出新的检查异常或者比被重写方法申明更加宽泛的异常。例如: 父类的一个方法申明了一个检查异常 I...

2019-12-15 10:04:02 96

原创 一、7(1)java面向对象编程{java继承}

Java 继承继承的概念继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。生活中的继承:兔子和羊属于食草动物类,狮子和豹属于食肉动物类。食草动物和食肉动物又是属于动物类。所以继承需要符合的关系是:is-a,父类更通用,子类更具体。虽然...

2019-12-15 10:03:34 65

原创 二、4网络编程

Java 网络编程网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。java.net 包中 J2SE 的 API 包含有类和接口,它们提供低层次的通信细节。你可以直接使用这些类和接口,来专注于解决问题,而不用关注通信细节。java.net 包中提供了两种常见的网络协议的支持:TCP:TCP 是传输控制协议的缩写,它保障了两个应用程序之间的可靠通信。通常用于互联网协...

2019-12-15 10:03:07 54

原创 二、3多线程

Java 多线程编程Java 给多线程编程提供了内置的支持。 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销。这里定义和线程相关的另一个术语 - 进程:一个进程包括由操作系统分配的内存空间,包含一个或多个线程。一个线程不能独立的存在,它必须是进程的一部分。一个进程一直运行,直到所有...

2019-12-15 10:02:39 60

原创 二、泛型

Java 泛型Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。假定我们有这样一个需求:写一个排序方法,能够对整型数组、字符串数组甚至其他任何类型的数组进行排序,该如何实现?答案是可以使用 Java 泛型。使用 Java 泛型...

2019-12-15 10:02:11 68

原创 jquery选择器

jQuery 选择器jQuery 选择器允许您对 HTML 元素组或单个元素进行操作。jQuery 选择器基于元素的 id、类、类型、属性、属性值等"查找"(或选择)HTML 元素。 它基于已经存在的 CSS 选择器,除此之外,它还有一些自定义的选择器。jQuery 中所有选择器都以美元符号开头:$()。元素选择器jQuery 元素选择器基于元素名选取元素。在页面中选取所有 元素:$...

2019-12-15 10:01:42 52

原创 jquery语法

jQuery 语法通过 jQuery,您可以选取(查询,query) HTML 元素,并对它们执行"操作"(actions)。jQuery 语法jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作。基础语法: $(selector).action()美元符号定义 jQuery选择符(selector)“查询"和"查找” HTML 元素jQuery 的 action...

2019-12-15 10:01:15 121

原创 jQuery 效果 - 淡入淡出

jQuery Fading 方法通过 jQuery,您可以实现元素的淡入淡出效果。jQuery 拥有下面四种 fade 方法:fadeIn()fadeOut()fadeToggle()fadeTo()jQuery fadeIn() 方法jQuery fadeIn() 用于淡入已隐藏的元素。语法:$(selector).fadeIn(speed,callback);可选的 sp...

2019-12-15 10:00:46 70

原创 jQuery 效果 - 隐藏和显示

实例jQuery hide()演示一个简单的 jQuery hide() 方法。jQuery hide()另一个 hide() 演示。如何隐藏部分文本。jQuery hide() 和 show()通过 jQuery,您可以使用 hide() 和 show() 方法来隐藏和显示 HTML 元素:例如:如果点击“隐藏”按钮,我就会消失。隐藏显示**语法:**$...

2019-12-15 10:00:23 64

原创 jquery事件

jQuery 事件下面是 jQuery 中事件方法的一些例子:Event 函数 绑定函数至$(document).ready(function) 将函数绑定到文档的就绪事件(当文档完成加载时)$(selector).click(function) 触发或将函数绑定到被选元素的点击事件$(selector).dblclick(function) 触发或将函数绑定到被选元素的双击事件$(s...

2019-12-15 09:59:55 92

原创 jQuery 效果 - 滑动

jQuery 滑动方法可使元素上下滑动实例jQuery slideDown()jQuery slideUp()jQuery slideToggle()jQuery 滑动方法jQuery 拥有以下滑动方法:slideDown()slideUp()slideToggle()

2019-12-15 09:59:22 68

原创 jQuery 效果 - 动画

jQuery 动画 - animate() 方法jQuery animate() 方法用于创建自定义动画。语法:$(selector).animate({params},speed,callback);必需的 params 参数定义形成动画的 CSS 属性。可选的 speed 参数规定效果的时长。它可以取以下值:“slow”、“fast” 或毫秒。可选的 callback 参数是动画完...

2019-12-15 09:58:57 62

原创 jQuery 停止动画

jQuery stop() 方法用于在动画或效果完成前对它们进行停止。实例:jQuery stop() 滑动jQuery stop() 动画(带有参数)jQuery stop() 方法jQuery stop() 方法用于停止动画或效果,在它们完成之前。stop() 方法适用于所有 jQuery 效果函数,包括滑动、淡入淡出和自定义动画。语法$(selector).stop(stop...

2019-12-15 09:58:31 147

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除