自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MYSQL初窥索引2——索引分类

上一节中我们介绍了几种数据结构,在mysql中主要用到的是b+树和hash,所以mysql的索引也可由此分类为hash索引和B+索引。这两种索引的使用和你选择的mysql引擎有关,一般Innodb和Myisam可以支持B+索引,Memory支持Hash索引。1.Hash索引将关键字进行hash函数转换得到hash值,这个hash值我们一般称为地址,通过这个地址可以找到具体数据,我们将这种索引称为hash索性。举个例子。比如一张users表中,在id字段建hash索引,进行查询。..

2020-06-19 15:08:39 301

原创 MYSQL初窥索引1——索引原理

MYSQL在进行千万级别数据查询时,如果没用到索引,就需要遍历整个数据表,来一一匹配结果是否满足查询调节,运气好的时候匹配几次就匹配到了,运气不好时候就需要匹配很久,我们数据库的数据都是存储在磁盘中的,这样一次次读取磁盘数据到内存中匹配,会导致磁盘文件的I/O效率很低,所以这时经常会使索引来加快查询速度,这也是优化SQL的一个重要手段。 索引是什么?这个一百度会后很多官方解释,我来说说自己的一个理解吧。我觉得索引就是将你的数据表中的某列(索引列)的值按照一定规则排序成为一种新的数据结构(B+tre...

2020-06-15 13:05:19 394

转载 Thrift 入门教程【转】

本文转自本文转载自:http://roclinux.cn/?p=3316在英语里,thrift是个名词,表示的是“节俭、节约”,给个例句会印象更深些: Farmers know a lot about value and thrift。(译:农场主深谙价值与节俭之道。) 然而,这篇文章并非是一篇英语学习教程,而是要和大家介绍计算机技术里一款著名的通信框架 – thrift框架。 ...

2020-03-09 17:11:06 1440

原创 Workerman--后端消息实时推送至前端

在开发过程中,我们经常会遇到如下这种情况。前端列表展示后台数据库中的数据,但是在后台的某一个接口中向数据库插入一条数据,此时数据库已更新,但是前端展示数据并没有更新,需要手动刷新才可以。但是每次都自己手动更新,太麻烦了,这时候就可以用到workerman来解决问题了。Workerman是一款纯PHP开发的开源高性能的PHP socket 服务器框架。被广泛的用于手机app、移动通讯...

2019-12-31 11:51:43 2861 3

原创 php——利用tp5生成二维码

二维码,在日常生活中随处可见,二维码生成也是比较普遍的技术了,现在介绍一下如何利用tp5生成二维码。第一步下载二维码插件Phpqrcode,地址 https://sourceforge.net/projects/phpqrcode/files/,把下载的文件夹放到\thinkphp\vendor下第二步在application/common.php中新增生成二维码方法...

2019-11-26 21:44:25 427

转载 Nginx 配置 location 模块实现路由(反向代理、重定向)功能

【转】本文为转载文章,原文链接为https://blog.csdn.net/weixin_44367006/article/details/101715799 Nginx 配置 location 模块实现路由(反向代理、重定向)功能 ...

2019-11-22 18:42:30 2458 1

转载 Nginx实现负载均衡

【转】本文是转载文章,原文链接为:https://www.cnblogs.com/shouke/p/10157748.htmlNginx 负载均衡原理简介与负载均衡配置详解  测试环境nginx-1.10.0 负载均衡原理 客户端向反向代理发送请求,接着反向代理根据某种负载机制转发请求至目标服务器(这些服务器都运行着相同的应用),并把获得的内容返回给客户端,期中,代理请求可能...

2019-11-21 10:07:08 227

原创 php——实现linux的定时任务

在php学习和工作生活中,经常需要定时去执行任务,一般可以分为纯代码实现和借助linux的定时任务管理器cron.d或者crontab来实现。 1.先来说一下纯代码是如何实现的。<?php ignore_user_abort();//关闭浏览器仍然执行set_time_limit(0);//让程序一直执行下去$interval=3;//每隔一定时间运行 3代表3sdo...

2019-11-19 20:30:52 1134

转载 GitHub 小白入门

【转】本篇文章为转载文章,原文链接为https://blog.csdn.net/buknow/article/details/80325986这篇文章是我自己写的关于GitHub的内容,从我刚听到这个直到设置成功每一步都有详细的步骤来解释,其中有一些截图或者代码来自于网上。首先,我先对GitHub来一个简单的介绍,GitHub有一个很强大的功能就是,你在服务器上边可以创建一个库(稍后会介绍怎么...

2019-11-15 17:32:37 159

原创 php——在linux下的文件读写权限问题

在 linux 系统中在创建 文件/文件夹 时有一个默认权限,此权限受 umask 设置影响,linux 系统中默认的 umask 为 022,与 777& 运算之后,就变成了 755。如上图所示,Linux三种文件类型:普通文件:包括文本文件、数据文件、可执行的二进制程序文件等,使用“-”标识。目录文件:Linux系统把目录看成是一种特殊的文件,利用它构成文件系...

2019-11-14 16:25:49 3048 2

原创 php——socket通信(二)

本文承接上文,讲一下在进行PHP的socket通信时遇到的问题以及解决方法。一.运行服务端代码,发现端口1935并未被监听,netstat -ano | findstr 1935命令查看端口状态,而且程序也直接跳出未继续运行了。解决方法:1.检查php命令是否配置好,即PHP的环境变量有没有配置正确2.检查php是否开启了对sockets的支持,打印phpinfo(),搜索so...

2019-11-13 17:14:32 213

转载 php——socket通信(一)

【转】本文为转载文,原文链接为https://www.cnblogs.com/aipiaoborensheng/p/6708963.html 深入浅出讲解:php的socket通信 </h2> 对TCP/IP、UDP、Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵。那么我想问:1. &nb...

2019-11-13 16:50:28 132

原创 PHP——关于strtotime函数的time参数

今天在写代码时,验证时间字符串是否符合时间格式的时候,发现了一个有趣的现象,运行如下代码<?php $a = '2017';$b = '201701';$c = '20170101';var_dump(date('Y',strtotime($a)));var_dump(date('Y',strtotime($b)));var_dump(date('Y',strtoti...

2019-11-12 16:50:40 573

原创 PHP——$_POST、$HTTP_RAW_POST_DATA和php://input的区别

在进行数据传输和数据交互时,经常需要获取他人传输来的数据,这时一般会有三种方法提供给我们来进行数据的获取,现在来简单介绍一下这三种方法的区别。1.$_post这是我们在数据交互时常用的一种方法,但对于接收json格式的数据而言显然是行不通的,具体原因在于post是以关联数组方式组织提交的数据,并对此进行编码处理,如urldecode,甚至编码转换,识别的数据类型是PHP默认识别的数...

2019-11-09 16:02:31 660

原创 PHP——get和post请求他人接口

在PHP实际开发过程中,经常需要与别人合作对接,这时候就有可能需要访问他人接口来进行数据的获取,这里特指是在同一网络下,不需要进行跨网闸的操作。现在,就需要方法来请求他人接口。 请求一般分为get和post请求,请求输入参数一般也会做出限制,有可能为json格式,或者xml格式,这里以json格式为例。get请求:/** * GET 请求 * @param string $...

2019-11-09 15:13:57 3344

转载 网络协议、socket、webSocket

本文为转载文章,原文链接为https://blog.csdn.net/yjclsx/article/details/80922951一、网络协议网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。1、OSI七层协议OSI是一个开放性的通信系统互连参考模型,他是一个定义得非常好的协议规范。OSI模型有7层结构,从上到下分别是 7 应用层 6 表示层...

2019-11-07 15:31:18 135

转载 Thinkphp5.0 驼峰命名测试与总结

本文转载文章,原文链接为https://www.cnblogs.com/fangziffff123/p/7745409.html。 Thinkphp5.0 驼峰命名测试与总结 </h1> <div class="clear"></div> <div class="postBody"> 一 Thinkphp5...

2019-11-06 17:20:58 756

原创 php——tp5中前后端的数据交互

一般情况下会使用smarty模板引擎进行前后端分离,但是在tp框架中,应该如何进行前后端数据交互呢? 如图,这是tp5下一个自建的login模块,里头包括controller控制器,model模型和view视图。在controller\login.php\index中渲染调取view\login\login.html,并且利用smarty模板引擎将标语$logo的值输出到前端...

2019-11-06 17:16:49 3085

转载 【转】mysql数据库引擎简介

本文为转载文章,原文链接地址:https://blog.csdn.net/yjclsx/article/details/81911027数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。...

2019-10-31 14:51:21 111

转载 【转】dataX简介

本文为转载文,原文链接为https://blog.csdn.net/u014646662/article/details/82792725一. DataX3.0概览二、DataX3.0框架设计三. DataX3.0插件体系四、DataX3.0核心架构五、DataX 3.0六大核心优势对人工智能感兴趣的同学,可以点击以下链接:现在人工智能非常火爆,很多朋友都想学,但是一般的教程都是为博...

2019-10-29 09:23:40 665

转载 【转】PHP—Nginx反向代理

nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;nginx可以作为一个HTTP服务器进行网站的发布处理,另外nginx可以作为反向代理进行负载均衡的实现。 反向代理服务器架设在服务器端,通过缓冲经常被请求的页面来缓解服务器的工作量,将客户机请求转发给内部网络上的目标服务器;并将从服务器上得到的结果返回给Inter...

2019-10-25 16:26:09 452

原创 PHP—利用cookie实现七天免登录

在大部分系统,都会存在用户的注册登录退出。当这个系统每天都要登录,但是每次都要输出用户名密码的话,就会觉得很麻烦(在不考虑安全隐患的情况下),这是就可以设计一个免登录的方法,来有效地解决这一问题。 解决思路为,在成功登陆一次系统之后,将用户信息保存到cookie中,等到下一次登录时,系统就会先去cookie中验证登录信息,登录信息正确且没有失效时,就可以实现免登录。 具体代码实现如...

2019-10-24 16:29:47 4163

转载 php--防止sql注入的方法

【一、在服务器端配置】安全,PHP代码编写是一方面,PHP的配置更是非常关键。我们php手手工安装的,php的默认配置文件在 /usr/local/apache2/conf/php.ini,我们最主要就是要配置php.ini中的内容,让我们执行 php能够更安全。整个PHP中的安全设置主要是为了防止phpshell和SQL Injection的攻击,一下我们慢慢探讨。我们先使...

2019-10-22 18:03:47 180

原创 PHP中session的基础应用二

在介绍完session的基本用法之后,来做一个简单的应用,即利用session实现简单的登录。 先编写登录的前端页面,login.html。<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>登录</title> <style ty...

2019-10-22 17:27:23 147

原创 PHP中session的基础应用一

PHP项目中经常会用session来保存某些信息。现在来介绍一下session的最简单应用。 新建一个测试脚本test1.php。<?php //开启sessionsession_start();//保存变量$_SESSION['name'] = 'hello php'; ?>新建另一个测试脚本test2.php,来验证保存变量。&lt...

2019-10-20 22:04:01 114

原创 PHP原生项目之留言板

在学习完PHP的基础语法之后,尝试来写一个留言板的小demo,用原生语法写,不接触框架或者其他的什么的。 首先我们设计留言板,有两大板块,一个是添加留言,另一个就是显示留言。顺着这个思路,我们先将数据库设计好。在自己的数据库中新建表message,用来保存留言。数据表中,我们设计,id递增的函数,user用来存储用户名称字符长度25,title 用来存储的标题 字符长度50,conten...

2019-10-19 14:47:00 1022

原创 PHP-MVC框架搭建之数据库操作类和公共模型类文件

介绍完公共控制器类之后,我们的控制器继承公共控制器来进行业务操作,这时就需要模型类来进行对数据库的操作,这需要dao数据库操作类和公共模型类让模型类继承来实现这一操作。 数据库操作类dao,其实就是利用pdo进行二次封装,从而实现对数据库的操作。<?php namespace core; use \PDO; use \PDOstatement; ...

2019-10-16 17:19:20 677

原创 PHP-MVC框架搭建之公共控制器类文件

写完入口文件和初始化类文件之后,我们继续完成公共控制器的部分。 我们每个平台信息都有自己的controller类,但这些controller会有一些代码重复的地方,造成资源浪费,这时候我们创建一个公共控制器的类,然后让其他控制器去继承它,就可以很好的解决这个问题。 <?php namespace core;class controller{ //增加属性,方便...

2019-10-15 17:05:19 333

原创 PHP-MVC框架搭建之入口文件

MVC框架目录结构index.php作为单一入口,所有请求只能访问index.php,并且要携带平台信息和控制器。<?php //增加入口标记 define('ACCESS',TRUE); //定义项目根目录 define('ROOT_PATH',str_replace('\\', '/', dirname(__DIR__)).'/'); //echo ...

2019-10-14 23:11:48 881 2

原创 简单的smarty应用

smarty作为前后端分离的模板引擎,现在应用的十分广泛。今天简单介绍一下如何使用smarty模板。先去官网下载,下载时需要注意smarty版本,smarty不同版本对应着不同版本的PHP版本,下载适合自己PHP版本的。下载后解压,主要是使用其中的lib文件夹中的内容。 首先,我们创建一个模板文件,template.html<!DOCTYPE html><htm...

2019-10-13 14:19:17 111

原创 mysql的SQL预处理

我们一般处理SQL语句时,都是即时的,mysql客户端发送一条SQL语句到mysql服务器,mysql服务器进行编译处理运行。但是有的时候我们会重复的执行一条SQL语句,这是使用即时处理,就会造成很大的资源浪费,而且耗费时间,特别是操作大量数据时。 对于这一问题我们通过SQL预处理,可以很好地解决这一问题。SQL预处理步骤一般为prepare,execute,drop。 我们现在来...

2019-10-11 17:12:07 1310

原创 PHP中PDO的基本操作二

在介绍完pdo的基本操作之后,我们利用封装连接和读写操作,实现对数据库的读写操作。 下面是封装方法 function.php<?php //pdo对象初始化 function init(){ $pdo = @new pdo('mysql:host=localhost;port=3306;dbname=test','root','123456'); //错误处理...

2019-10-10 21:10:18 145

原创 PHP中PDO的基本操作一

PHP 数据对象 (PDO) 扩展为PHP访问数据库定义了一个轻量级的一致接口。 PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据。 PDO随PHP5.1发行,在PHP5.0的PECL扩展中也可以使用,无法运行于之前的PHP版本。 首先我们需要在php.ini配置文件中开启PHP对于数据库(如mysql)的PDO扩展,...

2019-10-09 23:27:41 153

原创 关于PHP中的重载

在面向对象的编程中,重载指的是不同函数使用相同的函数名,但是参数的类型和个数不同。而在PHP中,重载的是当对一个对象或类使用其未定义或者不可访问的属性或方法的时候,调用对应的魔术方法,是对错误的特殊处理机制。 PHP的重载分为属性重载和方法重载。 属性重载:<?phpclass man{ private $age = 10; public function ...

2019-10-08 16:52:56 142

原创 JS中加var和不加var的区别

var num = 1;现在我们声明了一个变量,如果在方法中声明,则为局部变量,如果在全局域中声明,则为全局变量。num = 1;事实上是对属性赋值操作。首先,它会尝试在当前作用域链(如在方法中声明,则当前作用域链代表全局作用域和方法局部作用域等)中解析 num; 如果在任何当前作用域链中找到num,则会执行对num属性赋值; 如果没有找到num,它才会在全局对象(即当前作用域链的...

2018-08-10 13:52:27 1839

原创 PHP实现接口

    和大多数面向对象的编程语言一样,在PHP中是不支持多重继承的。如果要实现多重继承功能,可以通过接口。    接口的思想是指定一个实现了该接口的类必须实现的一系列函数。一般,我们用interface来声明一个接口,并在接口中声明一些方法(即函数),注意只是声明不用实现这个函数。然后,用class声明一个类并用implements去使用这个接口,再在类中把接口中的声明的方法进行实现。一...

2018-07-24 21:00:48 4207

原创 PHP遍历一维数组的几种方式

对与一个在PHP脚本中编写的数组,我们有多种方式去遍历它。下面介绍几种用循环遍历的方法。1、 有数组$products   $products = array('Tires','Oil','Spark Plugs');遍历方式有:  for($i = 0;$i &lt;3; $i++)  {   echo $products[$i] . " ";   }这是我们在C语言中最常见的遍历方...

2018-07-17 22:04:38 8436

原创 在PHP脚本中的转义字符 \

在编写PHP脚本的过程中,经常在遇到写路径或者某些特殊字符时,要用到转义字符,反斜线  \  。比如,在使用fopen()函数的时候,我们要写参数,即要打开的路径。$fp = fopen("$DOCUMENT_ROOT/../orders/orders.txt",'w');在Unix系统中,目录中间的间隔符是正斜线(/);而在Windows系统中,可以使用正斜线或者反斜线作为间隔符。但...

2018-07-16 20:20:10 6416

原创 PHP脚本中的两种换行符的区别

    在编写PHP脚本代码的时候,我们经常会看到 \n和&lt;br /&gt;这两个字符,它们都有换行的作用,那么到底有什么区别呢?    1.\n是使源代码换行,而浏览器显示的内容不换行;    2.&lt;br /&gt;是使浏览器显示的内容换行,而源代码不换行。例子:PHP代码1:&lt;?phpecho 0;echo "\n";echo 1;?&gt;浏览器显示:无换行...

2018-07-15 18:05:59 51541

原创 Linux文件系统

一. inode详解  1. Linux下每个文件都有唯一个inode,每个inode都有一个唯一的编号。inode用来记录了文件的相关属性,主要包括以下信息     (1)文件的权限     (2)文件的所属组和所属用户     (3)文件的大小     (4)文件的创建或改变的时间     (5)文件最近一次读取的时间     (6)文件最近修改的时间     (7)文件的block位置  

2017-03-29 21:15:01 192

空空如也

空空如也

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

TA关注的人

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