自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

PHP视界

关注 “PHP视界”公众号 我们一起学习 一起进步

  • 博客(35)
  • 收藏
  • 关注

原创 PHP面霸养成系列——MySQL高频问题

前言:我坚信,机会永远属于有准备的人,我们与其羡慕他人的成功,不如从此刻起,积累足够多的知识和面试经验,为将来进入更好的公司做好充分的准备!想让面试官在短短的几十分钟内认可你的能力?想在最短的时间内收获 PHP 技术栈最核心的知识点?想要更全面更深入的了解 PHP 技术?这篇文章给你想要的所有答案。今天要说的是PHP面试之MySQL高频问题,话不多说,直接上1.数据表类型有哪些?...

2019-12-12 16:20:07 828 3

原创 浅谈PHP7的垃圾回收机制

最近一直在看关于PHP得来讲回收机制,今天总结一下,写下来,一来让自己的影响更加深刻一些,二来为后面继续学习swoole先做一点二准备。在我看来,垃圾回收机制其实说白了就是将内存回收再使用得一个过程。这些东西一般我们在做PHP开发的时候不会遇到,因为PHP本身已经帮我们做好了这些。在了解垃圾回收机制之前,我们先要对内存有一个概念,这块不清楚的建议大家先去了解一下。就想我前面说的,垃圾回收机...

2019-08-19 18:41:15 1161

原创 linux查询一个日志文件中访问次数最多前10个IP

查询一个日志文件中访问次数最多前10个IP?第一步:按照IP进行将记录排序。第二步:按照IP去重,并且显示重复次数第三步:按照次数升序排列第四步:显示前10行cat log.txt|awk -F" " '{print &1}' |sort|uniq -c|sort -nrt " "|awk -F" " 'print &2' |h...

2019-07-23 14:19:58 3904

原创 关于mysql使用过程中limit分页导致查询速度慢的优化

最近在项目中遇到一个有意思的事。mysql在查询过程中耗时很长,找了一下原因,无果。遂去万能的百度寻求答案,找来找去,感觉自己好像发现了什么。。。以此记录一下,下次遇到的话有个解决!!!先是我最开始的sql语句select * from table limit 100000,20执行时间3.26秒然后优化limit优化后的sql语句select * from tab...

2019-07-17 15:56:04 1594 1

原创 【PHP内核剖析】面向对象

作为一名程序猿,你们是不是经常会看到这样的一个笑话:“程序猿A:没对象啊,好烦啊,难道程序猿真的不配拥有对象嘛?程序猿B:啊,没对象,new一个不就好了”这个笑话是不是经常听到呢?那你真的知道‘对象’这个东西嘛?你知道‘类’嘛?你知道‘对象’与‘类’之间是什么关系嘛?而我们经常说的‘面向对象’,你又真正了解嘛?今天,我们就一起来扒一扒PHP中关于‘面向对象’的一些相关的知识吧!对象...

2020-07-22 16:46:13 313

转载 PHP面霸养成系列——linux常见命令

前言:我坚信,机会永远属于有准备的人,我们与其羡慕他人的成功,不如从此刻起,积累足够多的知识和面试经验,为将来进入更好的公司做好充分的准备!想让面试官在短短的几十分钟内认可你的能力?想在最短的时间内收获 PHP 技术栈最核心的知识点?想要更全面更深入的了解 PHP 技术?这篇文章给你想要的所有答案。1.请解释下列10个shell命令的用途(新浪网技术部)top、ps、mv、find...

2019-12-16 15:18:16 481 1

原创 PHP面霸养成系列——redis高并发问题

前言:我坚信,机会永远属于有准备的人,我们与其羡慕他人的成功,不如从此刻起,积累足够多的知识和面试经验,为将来进入更好的公司做好充分的准备!想让面试官在短短的几十分钟内认可你的能力?想在最短的时间内收获 PHP 技术栈最核心的知识点?想要更全面更深入的了解 PHP 技术?这篇文章给你想要的所有答案。Redis现在已经成为了PHP面试必不可少的一部分,那么,你在面试过程中是否被redis...

2019-12-13 16:53:15 557

原创 PHP面霸养成系列——PHP进阶知识问答

通过上一篇文章的学习,我们基本掌握了面试过程中一些基础的问题,今天我们再来说说关于PHP进阶知识在面试中经常被问到的一些问题。1.面向对象?面向对象是一种思想,是基于面向过程而言的,就是说面向对象是将功能等通过对象来实现,将功能封装进对象之中,让对象去实现具体的细节。面向对象有三大特征:封装性、继承性、多态性。现在纯正的OO语言主要是 Java 和 C#,PHP、C++也支持O...

2019-12-11 17:10:38 326

原创 【VUE学习系列】--- 创建vue项目

vue+php+elementui+axios个人博客项目地址:https://github.com/LeeToug/thinkphp-vue通过上一篇文章的学习,我们已经搭建了一个vue项目的框架,接着上次的命令(我创建的项目名是 ‘myvue')cd muvue先来说一下各文件的用处:build 文件夹: 里面是对 webpack 开发和打包的相关设置,包...

2019-12-10 17:02:25 455

原创 【VUE学习系列】--- Windows搭建安装vue

随便说说:本来的计划前端知识应该是明年才学的,奈何最近项目的前端同事离职了,赶着鸭子上架,作为一名PHP开发者,前端的东西自然而然落在了我的头上,幸好后端接口已经写完了,那就学习一下呗,于是就有了这么一篇入门级别的学习文章,大佬绕道,小白可能会对你有点儿思路上的指引。文章中有错的地方,欢迎指正!本文先说一下如何搭建vue环境下载安装node环境。地址:https://nodejs.or...

2019-12-10 16:20:30 424

原创 【PHP7内核剖析】——PHP 函数

今天看一下PHP7中的函数相关的一点儿知识。首先来说,PHP的函数分为用户自定义函数与内部函数两类,先看一下用户自定义函数。通过前面的文章,我们知道了PHP在编译执行的时候,会将PHP脚本解释称opline指令。那同样的,PHP中函数也是被编译成了opline指令集合zend_op_array。调用函数时即相当于调用指令集。PHP脚本通过_zend_function联合体来定义一个函数...

2019-12-03 16:58:44 3848

原创 PHP面霸养成系列——PHP基础知识问答(附答案)

该系列包括PHP基础知识,PHP进阶知识,MySQL常见问题,高并发之Redis,Linux常见命令,thinkPHP与laravel6个方面的相关知识,文章已上传至github,点击这里直达github:https://github.com/LeeToug/interview1.PHP中的数据类型有哪些? 4个标量:字符串,整型,浮点型,布尔型 2个复合型:数组,对象 ...

2019-12-03 11:52:06 309

原创 【感恩节】一个程序员的总结

感恩节,写一些我这些年的经历,也对自己做一个总结,对生命中遇到的人说一声感谢!蓦然回头,工作已经快三年了,静下来看看现状,唉,感觉真的不如上大学的时候啊 -_-13年,怀着兴奋,忐忑的心情独自一个人来到了福州,这个距离我家乡两千多公里的城市。刚进大学的校门,对一切充满了新奇,心里想的是,好好学习,每年都要争取拿奖学金!!!(现在想想,当时的想法啊,天真又美好)计算机的专业,大一大...

2019-11-29 11:49:50 1227 1

原创 【PHP7内核剖析】——PHP的编译与执行

我们都知道,PHP是一门编译型语言,那除了编译型语言,计算机还有什么语言呢?一般来说,计算机语言分为两类,一种就是C/C++等的编译型语言,另外一种是PHP的解释型语言。那解释型语言与编译型语言有什么区别呢?那个又更好呢?我们先来扒一扒这两种语言的解释吧!编译型语言:程序在运行之前先将语言编译成计算机可执行的二级制文件,在执行时直接执行机器指令。解释型语言:程序在运行时有解释器边编译边...

2019-11-27 16:24:39 2077

原创 【PHP7内核剖析】——变量自动GC机制

目录引用计数写时拷贝回收时机前言:这篇文章主要记录了PHP内存管理中的变量自动GC机制。关于这块,在我之前的博客 ”浅谈PHP7的垃圾回收机制“ 中有粗略的说一些,如果你不想深入的探究的话,看一下那一篇文章即可,这里我会说的更加深入一些。我们都知道,PHP中我们每次使用一个变量的时候直接用$符号申明,之后我们就在需要用到的地方直接使用就好了,最后使用完之后,我们将不会再去管...

2019-11-26 16:10:55 244 1

原创 【PHP7内核剖析】——数据类型

前言:本来这一章是不想写的,引文关于数据类型这章内容,大多讲的都是一些PHP内部的处理,对于我们平时开发PHP用处不是特别大,我们也可以不用去确切的了解。然而今天的项目进度做完了,看看还有写时间,想着也别浪费么,那就简单写一些,就当是联系一些自己写文章的能力了吧!正文开始:数据类型这个东西吧,但凡是高级语言,肯定是离不开的,这样一来,这个东西其实就是编程的最基础的东西了,其实你如果懂了...

2019-11-21 17:56:38 1404

原创 【PHP7内核剖析】——SAPI简析

前言:首先,从个人的角度来说一下关于SAPI这章吧!这章内容大多其实是讲了一些C语言的函数实现部分,之前若是没有C基础的同学,看起来可能会比较吃力,所以我的建议是,不用去通读里面的关键代码,首先我们对这些函数有一个影响,知道一个大概即可,后期有时间可以先了解一下C之后,再过来开这块,个人感觉会比较轻松!!!先来说一下什么是SAPI?SAPI是服务端应用层的接口,即PHP与其他应用交互的...

2019-11-19 15:54:47 1589

原创 【PHP7内核剖析】——PHP基础架构

最近在看【PHP7内核剖析】这本书,看完之后有点点感悟,在这里对每个章节做下总结,也是为了自己以后回顾知识点,也是为了给更多的读者提供一点儿思路。本人小白,后面各位如果看到哪里说的不对的地方,欢迎大家一起来指出问题,特此感谢!正文开始:首先,PHP的基础架构我总结一下一.PHP7的改变抽象语法树:在之前的版本中,PHP的解析器与执行器大部分是耦合在一起的。在PHP7的版本中,...

2019-11-18 14:38:31 4503

原创 laravel中关于Schema::getColumnListing()方法的一点儿记录

项目使然,需要用laravel框架开发。写到DB保存数据的时候,因为之前有前辈封装好了关于DB的一些常用操作,就直接拿过来用了。前辈写的是使用save添加的时候会做一步过滤无用列的操作,那么,这里就需要获取某个表的所有字段,用来对比当前字段是否在表中存在,不存在则需要过滤掉,然后使用了laravel框架封装好的Schema::getColumnListing()这个方法。到这里,问题出现了...

2019-11-05 17:25:01 1564

原创 PHP获取所有的控制器与方法(可自定义过滤)

文中代码已上传至github,需要的同学自行拉取:https://github.com/LeeToug/CtlAct如果你觉得拉取麻烦的话,可直接使用composer require ctlacl/ctlact命令加载到你的项目中使用!!!前几天我写的一个thinkphp5的项目需要配备权限系统,考虑到乱七八糟的各种问题,最后定了一个思路:将当前项目中所有的控制器与方法全部获取,然...

2019-11-01 16:41:58 676

原创 PHP基础算法(冒泡)(选择)(二分查找)

今天有点时间,回顾一下PHP的基本算法,好久没写了,今天复习一下,免得忘记了!!!冒泡排序相邻两个元素比较,小于(或大于)则交换两个元素的位置,直到走完所有的元素。时间复杂度O(N^2)/** * @param $arr * @return mixed * 冒泡排序 */function MaopaoSort($arr){// $arr = ['9','1'...

2019-11-01 10:52:07 199

原创 高并发的一点儿心得

现在,很多公司在面试的时候都会提到需熟悉并发这块,那今天我就来说说关于并发这块我的认识与理解!今天主要从三个方面来说一下并发:1.并发到底是什么?2.并发是怎么产生的呢?3.如何防止并发?首先,第一个,并发的概念。在百科上是这样说的:在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。...

2019-09-16 15:04:49 222

原创 windows如何配置使用git

1.安装Java环境(1)下载jdk(2)配置环境变量 JAVA_HOME CLASSPATH PATH(3)JAVAC检测是否成功安装Java环境2.下载gitblit3.修改变量参数(1)创建用于存储资料的文件夹。word(2)配置gitblit.properties 文件 找到git.repositoriesFolder(资料库路径),赋值为上一步创建好的文件目录...

2019-07-24 10:14:20 147

原创 linux系统分区

1.df -h 查看当前分区信息2.mount |grep home 挂载home3.umount /home 卸载挂载的home文件系统4.lvremove /dev/mapper/centos-home 删除home逻辑卷5.lvextend -L +500G /dev/mapper/centos-root 给root文件扩展500G空间6.xfs_growfs /dev/...

2019-07-23 14:42:10 137

原创 nginx多域名配置

nginx绑定多个域名可又把多个域名规则写一个配置文件里,也可又分别建立多个域名配置文件,我一般为了管理方便,每个域名建一个文件,有些同类域名也可又写在一个总的配置文件里。一、每个域名一个文件的写法首先打开nginx域名配置文件存放目录:/usr/local/nginx/conf/servers ,如要绑定域名www.itblood.com 则在此目录建一个文件:www.itblood.c...

2019-07-23 14:40:30 506

转载 mysql索引简析

数据结构角度出发:1、B+Tree(O(log(n))):关于B+树索引,可以参考MySQL索引背后的数据结构及算法原理2、hash索引:a 仅仅能满足"=","IN"和"<=>"查询,不能使用范围查询b 其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于...

2019-07-23 14:39:13 139

原创 sql语句在mysql中执行的顺序

from->where->group by->子句->计算表达式->select->排序SQL Select 语句完整的执行顺序:1、from 子句组装来自不同数据源的数据;2、where 子句基于指定的条件对记录行进行筛选;3、group by 子句将数据划分为多个分组;4、使用聚集函数进行计算;5、使用 having 子句筛选分...

2019-07-23 14:38:18 211

转载 mysql存储引擎

1.MYISAM引擎MyISAM存储引擎:不支持事务、也不支持外键,优势是访问速度快,对事务完整性没有 要求或者以select,insert为主的应用基本上可以用这个引擎来创建表2.InnorDb引擎存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是对比MyISAM引擎,写的处理效率会差一些,并且会占用更多的磁盘空间以保留数据和索引。InnoDB存储引擎的特点:支持自动增...

2019-07-23 14:37:25 176

原创 mysql中关于事务

Db::startTrans(); //启动事务try {这里写SQL语句Db::commit(); //提交事务} catch (\PDOException $e) {Db::rollback(); //回滚事务}mysql事务隔离级别有四个1.读未提交,有两个事务:事务A与事务B,事务A里面更新了一条记录并且未提交,事务B可以...

2019-07-23 14:24:30 150

原创 悲观锁与乐观锁的一点儿记录

1.悲观锁在对数据进行操作前,先对这块数据加排他锁,数据操作完之后释放锁如果加锁失败,说明该记录正在被修改,那么当前查询可能要等待或者抛出异常。 具体响应方式由实际情况决定。如果成功加锁,那么就可以对记录做修改,事务完成后就会解锁了。其间如果有其他对该记录做修改或加排他锁的操作,都会等待我们解锁或直接抛出异常。eg:SELECT*FROM`pay_order`WHE...

2019-07-23 14:23:06 116

原创 常用服务器状态码

301(永久移动)302(临时移动)305(使用代理)400(错误请求)服务器不理解请求的语法。401(未授权)请求要求身份验证。对于登录后请求的网页,服务器可能返回此响应。403(禁止)404(未找到)408(请求超时)500(服务器内部错误)502(错误网关)503 (服务不可用)...

2019-07-23 14:21:58 152

原创 lnmp的部署

开始使用博客了,把之前有道云的相关记录搬过来,今天就写一下关于lnmp的部署1)安装编译环境 c c++ make2) 安装常用类库 pcre(正则),zlib(压缩),openssl(http)3)安装nginx a.下载解压wget;tar -zxvf ​b.配置用户及用户组​groupadd -r nginx;useradd -r -g nginx nginx...

2019-07-23 14:09:17 121

原创 linux安装python3环境

闲来无事,想看看python,网上看了一下教程,好像入门问题不大,那就说干就干。先大概了解一下python的语法。传送门:https://www.runoob.com/python/python-tutorial.html最基础的语法啊,balabala一堆,反正先看下,了解一下。然后就是来搭建一下环境,网上看了一下,linux如何搭建python环境,一看吓一跳,linux本身自带p...

2019-06-19 14:49:36 195

原创 nginx简单配置负载均衡

心血来潮,研究一下linux服务器负载均衡的知识点。本来以为很简单的一个事情,不想还是研究了大半天的时间,想想还是记录下来,以防万一后面再遇到类似的坑。先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可以解释N台服务器平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。那么负载均衡的前提就是要有多台服务器才能实现,也就是两台以上即可。由于没有自己用的测试服务器,所...

2019-06-17 17:53:44 279

原创 简单记录thinkphp5使用Querylist插件做采集

源码地址:https://github.com/LeeToug/NewsGather最近公司需要做一个信息发布网站,任务分配下来之后确定我来主导这个项目。由于之前做小说采集网站的时候多用的是CMS自带的采集系统,但是本人实在不怎么感冒cms,所以在网上查看了一些资料,很神奇的找到了Querylist这个东西,今天就将我昨晚这次项目的里程分享一下。首先,querylist官网(http:...

2019-06-05 17:35:02 2279

空空如也

空空如也

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

TA关注的人

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