- 博客(32)
- 收藏
- 关注
原创 查询多条数据where id=某字符串(例如1,2,3,4) find_in_set (tp、源码用法)用法
TP5.1.22版本$id=4;Db::name('menu')->where('FIND_IN_SET(:id,pid_all)',['id' => $id])->update([$field => $title]);数组用法$map[]=['exp','FIND_IN_SET(2,needID)'];$db->where($map)->select();TP5.1.21 版本之后数组查询支持:要达到这样子查询:1、首先引...
2020-05-25 15:42:53
1582
原创 Sphinx : 高性能SQL全文检索引擎
Sphinx是一款基于SQL的高性能全文检索引擎,Sphinx的性能在众多全文检索引擎中也是数一数二的,利用Sphinx,我们可以完成比数据库本身更专业的搜索功能,而且可以有很多针对性的性能优化。Sphinx的特点快速创建索引:3分钟左右即可创建近100万条记录的索引,并且采用了增量索引的方式,重建索引非常迅速。 闪电般的检索速度:尽管是1千万条的大数据量,查询数据的速度也在毫秒级以上,2-4G的文本量中平均查询速度不到0.1秒。 为很多脚本语言设计了检索API,如PHP,Python,Pe
2020-05-20 16:01:27
223
转载 PHP十大经典排序算法
本系列算法整理自:https://github.com/hustcc/JS-Sorting-Algorithm同时也参考了维基百科做了一些补充。排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序...
2020-03-30 16:38:00
277
转载 使用MySQLWorkBench绘制ER图详解
数据库设计工具MySQLWorkBench·该工具为MySQL官方提供地址:http://dev.mysql.com/downloads/workbench/小伙伴们注意按自己的操作系统选择下载版本。·注意事项:安装后将环境语言配置成简体中文,否则中文乱码工作步骤新建模型后,会进入此页面。1./2.切换数据库表设计与ER...
2020-03-18 17:23:20
4832
1
原创 Api接口管理工具推荐
在App开发过程中少不了跟服务端打交道,各种HTTP接口调试、返回数据处理占据了不少开发时间,一款好的接口管理工具就非常有必要了。接口管理工具一方面起到链接后台开发人员和App开发人员的作用,另一方面也可以作为传统的接口文档使用,且比文档的实时性更强。因为各个团队的情况不太一样,可能对接口管理有不一样的需求,目前有不少接口管理工具,足以覆盖不同团队的需求,下面来简单介绍一下。1. YApi...
2020-03-09 09:50:01
226
原创 php 序列化和反序列化的作用及使用
1.序列化是什么意思呢?序列化就是把本来不能直接存储的数据转换成可存储的数据,并且不会丢掉数据格式serialize();2.反序列化是什么意思呢?其实就是字面的意思,把序列化的数据,转换成我们需要的格式unserialize();例如$sites = array('Google'=>'$ser', 'Runoob'=>'111...
2020-02-29 00:03:56
399
原创 mysql 存储引擎
MyISAM存储引擎MyISAM 支持或不支持的简要特性列表 MyISAM为速度而设计,和SELECT搭配起来使用更好 如果表的数据偏向静态,既表中的数据经常更新/删除,太多仅仅是查询操作,那么使用MyISAM时最好的选择 MyISAM支持表级锁,如果要在表中的数据上执行一个特定的操作,那么整张表可以被锁起来。在上锁期间,表上不能进行其他的操作。如果表是偏向动态的,既数据经常变更,则会...
2020-02-25 23:01:35
94
原创 HTTP Server 优化
前言:每款HTTP Server 程序提供的功能,都可以实现优化请求处理和服务器内容。缓存静态文件通常情况下,图片、css文件、js文件,字体文件这些静态文件的变更是不频繁的。所以这文件可以很好的呗缓存在用户设备上。为了达到这样的效果,WebServer程序需要添加特殊的响应头信息,以便让用户在浏览器内容的同事将静态内容缓存在用户设备上。以下分别是在Apache和Nginx下分...
2020-02-13 22:00:27
166
原创 Nginx与Apache
前文:目前有很多的HTTP server 软件可供选择,并且每一款都有其优缺点。目前最为流行的两款HTTP Server 软件当数Nginx和Apache了。下面对着两者进行比较,看看哪款更合适我们应用ApacheApache是使用最为广泛的一款HTTP server软件,大多数的管理员都特别钟爱它。特性 足够灵活 广泛支持多种语言 能力强化...
2020-02-13 21:38:50
139
原创 php 太空飞船操作符
太空飞船操作符在比较变量时非常有用,变量包括(字符串类型,整型,浮点型等)、数组、对象。这个操作符将三个计较符号(===、<、>)打包在一起,可以用于书写清晰易读的用于 usort、uasort、uksort的回调函数,具体使用规则如下当符号两边相等时返回0 当符号右边大于符号左边时返回-1 当符号左边大于符号右边时返回1用下面的例子来比较整型、字符串型、对象与数...
2020-02-10 09:41:31
294
原创 PHP 7.4.0刚刚发布!一起看看有哪些新特性
Typed Properties 类型属性类属性现在支持类型声明,以下示例将强制 $User-> id 只能分配 int 值,而 $User-> name 只能分配 string 值。*<?phpclass User { public int $id; public string $name;}?>Arrow Functions 箭头函数箭头...
2020-01-15 16:00:30
173
转载 关于跨站脚本攻击
一:什么是跨站脚本?跨站脚本(Cross-site scripting,简称XSS),是一种迫使Web站点回显可执行代码的攻击技术,而这些可执行代码由攻击者提供、最终为用户浏览器加载。不同于大多数攻击(一般只涉及攻击者和受害者),XSS涉及到三方,即攻击者、客户端与网站。XSS的攻击目标是为了盗取客户端的cookie或者其他网站用于识别客户端身份的敏感信息。获取到合法用户的信息后,攻击者甚至可...
2020-01-09 13:54:21
376
原创 PHP高级工程面试题汇总
1、给你四个坐标点,判断它们能不能组成一个矩形,如判断([0,0],[0,1],[1,1],[1,0])能组成一个矩形。勾股定理,矩形是对角线相等的四边形。只要任意三点不在一条直线上,任选一点,求这一点到另外三点的长度的平方,两个短的之和如果等于最长的,那么这就是矩形。2、写一段代码判断单向链表中有没有形成环,如果形成环,请找出环的入口处,即P点/* *单链表的结点类 */...
2020-01-09 13:23:52
589
转载 php常用的7大框架
一直以来,phper讨论最多的就是php各种框架的优缺点,网上的资料也是比较零散,现把几款主流的框架收集汇总一下,其中本人只是用过Yii2、Laravel、Yaf、Thinkphp这四种框架,因此大部分对各种框架的评价皆来自与网上资料,如果问题,请在评论中指出,共同进步一、ThinkPHPThinkPHP(FCS)是一个轻量级的中型框架,是从Java的Struts结构移植...
2019-12-25 14:06:48
173
转载 PHP 资源列表
一个PHP资源列表,内容包括:库、框架、模板、安全、代码分析、日志、第三方库、配置工具、Web 工具、书籍、电子书、经典博文等等目录Awesome PHP 依赖管理 Dependency Management 其他的依赖管理 Dependency Management Extras 框架 Frameworks 其他框架 Framework Extras 框架组件 Com...
2019-12-17 17:20:57
337
转载 MySQL数据库表分区功能详解
1、什么是表分区?mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面(可以通过my.cnf中的datadir来查看),一张表主要对应着三个文件,一个是frm存放表结构的,一个是myd存放表数据的,一个是myi存表索引的。如果一张表的数据量太大的话,那么myd,myi就会变的很大,查找数据就会变的很慢,这个时候我们可以利用mysql的分区功能,在物理上将这一张...
2019-11-21 09:36:28
119
原创 ThinkPHP/PHP框架实现导出excel数据的方法示例【基于PHPExcel】
<?phpheader("Content-type: text/html; charset=utf-8");class MesTestAction extends Action {//测试导出excel数据public function tpGetExcel() {//创建对象import("ORG.Util.PHPExcel"); //从P...
2019-11-21 09:32:09
164
原创 Python程序打包为exe可执行文件教程
大家都知道,Python是一种脚本语言,也就是解释型的语言,需要解释器来进行解释以后才可以执行,而Python源代码需要在Python虚拟机上面运行,但是我们做好的程序,不可能给用户使用的时候还让他安装一个Python环境,所以今天我们讲解如何将Python程序打包为exe可执行文件。提示: 以下的教程都是再有Python环境的基础上的,如果没有安装,请先参考:Python安装以及环境变量配置...
2019-11-19 10:46:56
248
原创 GET与POST传递数据的最大长度限制
GET与POST可传递的最大值到底是多少?前日,看到这个问题了。 没有深入了解。我的常识里面get最大传递的值为256b,post 是2M。这是很久以前不知在哪看到的。于是又百度一下。看到两篇文章装过来看看:浅谈 HTTP中Get与Post的区别GET方式传值的最大长度都有些道理。引用其中一些观点:get首先是"GET方式提交的数据最多只能是1024字节",因为GET是通过...
2019-09-02 11:11:24
3980
原创 基于redis分布式缓存实现
第一:Redis 是什么? Redis是基于内存、可持久化的日志型、Key-Value数据库 高性能存储系统,并提供多种语言的API. 第二:出现背景 数据结构(Data Structure)需求越来越多, 但memcache中没有, 影响开发效率 性能需求, 随着读操作的量的上升需要解决,经历的过程有: 数据库读写分离(M/S)–数据库使用多个Slave...
2019-07-03 16:52:30
101
原创 TCP UDP socket http webSockey 之间的关系
OSI&TCP/IP 模型OSI 模型包括了七层,而TCP/IP模型只有四层,虽然他们具有功能相当的网络层、传输层、应用层,但其它层并不相同。 我们一般使用的网络层数据传输由下而上共有七层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层应用层。也被依次成为OSI。 TCP/IP 模型中没有专门的表示层和会话层,它将与这两层相关的表达、编码和会话控制等功能包含...
2019-07-03 09:48:01
226
原创 Tp5.1使用导出Excel
首先安装 composer 链接地址https://www.phpcomposer.com/composer require phpoffice/phpexcel一:引入use PHPExcel;use PHPExcel_IOFactory;二:使用$objPHPExcel = new \PHPExcel(); // 设置sheet $...
2019-05-06 13:28:52
1999
转载 MySQL 重新定义id的自动增长值
方法一,执行SQL:truncate table test; (这里假定你的表名test,会删除本表,新插入时ID才重新开始)这种方法好处是运行速度超快方法二,执行如下SQL: (还是假定表名是test)delete from test;alter table `test` auto_increment=1;这种方法好处是可以从任何值开始,缺点是如果数据量大的话delete fr...
2019-03-22 15:16:28
319
原创 根据phpqrcode生成二维码
$data = 'www.baidu.com'; $level = 'L';// 纠错级别:L、M、Q、H $size = 6;// 点的大小:1到10,用于手机端4就可以了 include EXTEND_PATH.'org/phpqrcode/phpqrcode.php'; $QRcode = new \Q...
2019-02-28 20:04:43
310
原创 __construct()和__initialize() 之坑
ThinkPHP中的__initialize()和类的构造函数__construct()网上有很多关于__initialize()的说法和用法,总感觉不对头,所以自己测试了一下。将结果和大家分享。不对请更正。首先,我要说的是1、__initialize()不是php类中的函数,php类的构造函数只有__construct().2、类的初始化:子类如果有自己的构造函数(__construct...
2019-02-21 10:38:20
291
原创 网页错误在线检测网站汇总
在用IE浏览网站时,发现下面显示“网页上有错误”,虽然不影响浏览,但总归让人感觉不舒服,大概多数站长都遇到过。而如果你的代码基础不是很好的话也许根本找不到办法去解决这个问题,以致费了好多时间都无从下手,我是遭遇过多次这样的烦恼,因为本站加了一些代码,但是难免会冲突,有时候就在状态栏显示错误,代码很长挨个看实在头疼。 于是百度一下,狂搜网页错误在线检测工具,结果还真发现了不少,把用过的工...
2019-02-20 14:06:59
1717
原创 HTTP错误汇总(401、501、、、、)
HTTP 400 - 请求无效HTTP 401.1 - 未授权:登录失败HTTP 401.2 - 未授权:服务器配置问题导致登录失败HTTP 401.3 - ACL 禁止访问资源HTTP 401.4 - 未授权:授权被筛选器拒绝HTTP 401.5 - 未授权:ISAPI 或 CGI 授权失败HTTP 403 - 禁止访问HTTP 403 - 对 Internet 服务管理器 的访...
2019-02-20 13:36:23
1586
原创 md5和password_hash谁跟牛X
md5自不必说,想必所有phper都用过,但另一个加密函数不知道你见过没有他就是password_hash();加密方式更全面.使用起来也比md5+salt这种方式要简洁很多,最主要的是难破解,因为它每时每刻都在变动它的使用方式大致是这样1. 用户注册时提交过来密码,我们对用户密码进行加密,这里选择password_hash进行加密2. 加密之后,将加密好的密码存储到数据表中...
2019-02-20 13:34:58
859
原创 phpqrcode生成二维码输出时出现乱码(解决方法)
phpqrcode生成二维码输出时出现乱码require_once(app_path()."/Tool/phpqrcode/phpqrcode.php");$value="http://www.023xs.cn";$errorCorrectionLevel = "L"; // 纠错级别:L、M、Q、H$matrixPointSize = "4"; //生成图片大小 :1到10\QRc...
2019-02-20 13:31:36
4034
1
转载 Mysql| 使用通配符进行模糊查询(like,%,_)
原:https://blog.csdn.net/u011479200/article/details/78513632通配符的分类: %百分号通配符: 表示任何字符出现任意次数(可以是0次). _下划线通配符:表示只能匹配单个字符,不能多也不能少,就是一个字符.like操作符: LIKE作用是指示mysql后面的搜索模式是利用通配符而不是直接相等匹配进行比较. 注意: 如果在使用...
2019-02-20 10:53:38
916
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人