composer中可以配置四种自动加载规则,你可能会熟知其中的一两种,但可能不知道有四种吧?不知道的一起来随我学习吧。 psr-4 自动加载psr-4是目前最新的、最受欢迎的、广泛在各种composer包、PHP框架中使用的自动加载方式。 我这里不说明psr-4的加载规则了,因为官方文档比我说明的更规范、更清楚,如果不知道psr-4可以查看文章末尾的参考文章。 这里只说明怎么在composer.json中配置psr-4自动加载规则: { "autoload": { "ps... 阅读全文>>
刚接触JavaScript面向对象的同学,对于原型链和继承一定一头雾水。我接触js也有不少时间了,但这些问题到今天才弄清楚,不会的同学随我一起来学习吧。 实例化对象我们知道js中没有“类”,只有对象。没有类那么怎样创建一个对象呢?有两种方法,一种直接通过{}创建,一种是通过构造函数创建。 通过{}创建对象使用{}创建一个对象十分直观,就像这样: var zhangsan = { name: 'zhangsan', hello: function() { conso... 阅读全文>>
之前在Windows下使用PHP开发时都是使用的集成环境比如phpstudy、wxampp,但是身为一个PHPer怎么能不会自己搭建PHP环境呢。如果不会的话,那么就一起来学习下。 安装 Nginx下载 Nginx 软件包下载地址:http://nginx.org/en/download.html 自己选一个版本,目前最新稳定版为1.16,我下载这个。注意选择windows版本的(nginx/Windows-1.16.0)。 我们下载的是一个免安装的压缩包,直接解压到合适的目录下即可,我这解压后... 阅读全文>>
PDO介绍PDO是 PHP Data Oject 的缩写,即PHP数据对象。提供了访问各种数据库的一致接口,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据。 PDO还提供了预处理功能来防止SQL注入,另外也可以使用事务功能。 安装PDO扩展PHP在安装的时候,已经默认安装了PDO扩展,但要使用PDO操作具体的数据库,需要安装相应的数据库驱动扩展pdo-dbname。安装扩展的方法这里不做说明。 要查看PDO支持哪些数据库驱动,点击这里:PHP: PDO 驱动 - Manual 使... 阅读全文>>
在MySQL优化中,最常做的事情就是SQL语句优化,因为这个才是影响性能的最主要因素。 explain语句对SQL语句进行优化少不了使用explain分析SQL语句。下面先来说说怎么使用explain语句。 explain语法explain语法比较简单,只需要在你要分析的SQL语句前面加上explain即可,如: explain select id,name from tb_user; explain语句输出的每一行为对一个语句的分析,来看看每行有哪些输出: mysql> explain... 阅读全文>>
索引对于加快查询是非常重要的,合理使用索引能够显著提高查询速度。 MySQL中索引的实现MySQL中索引的实现技术分两种:B-Tree索引和Hash索引。 B-Tree索引B-Tree索引使用B+树实现。B+树一种多路查找树(如下图),是通过二叉查找树,再由平衡二叉树,B树(又名B-树)演化而来的,B+树中的B不是代表二叉(binary),而是代表平衡(balance),因为B+树是从最早的平衡二叉树演化而来,但是B+树不是一个二叉树,是多叉树。 Hash索引Hash索引的查找速度理论上是O(... 阅读全文>>
定长与变长分离所谓定长与变长分离是指:将表中固定长度的字段和可变长度的字段分开,将他们放在不同的表中。 固定长度类型:整型、浮点型、时间和日期型、enum、set、文本中char型可变长度类型:除char外的文本型、blob 为什么要这么做呢?如果一个表中的字段都是固定长度的字段,那么每行记录的长度都是固定的(fixed),这样如果想找到第N行的数据位置,直接使用N*RowSize即可,访问速度很快。 所以建议将核心字段设置为固定长度, 而变长字段,适合单放一张表, 使用主键与核心表关联起来。 ... 阅读全文>>
以前只知道索引可以加快查询速度,而具体为什么会加速快速,对于多列索引也不清楚,也没有用过多列索引,今天了解了一下。 多列索引多列索引是指定多个列组合为一个索引,MySQL将会将多个列的值组合计算后构建索引表。使用多列索引要比使用多个单列索引要快得多。 为什么这么说呢?因为当一个SQL语句中出现多个索引字段时候,它并不能每个索引都能得上,实际上它也只能使用其中一个单列索引去查找(MySQL会选择最精确的那个索引),为什么?我们可以把索引类比成一本书的目录,都是用来快速查找我们想要的内容的。我们小学... 阅读全文>>
Git Cheat sheets是一个git常用命令备忘表。原文地址:https://github.github.com/training-kit/downloads/zh_CN/github-git-cheat-sheet/ 安装GitGitHub提供了包含图形界面的桌面客户端,通过客户端可以完成大部分常用的仓库操作,同时可以自动更新Git的命令行版本,以适应新的场景。 GitHub Desktophttps://desktop.github.com/ GitHub的Linux和POSIX版本... 阅读全文>>
原文:NoSQL之【MongoDB】学习(三):配置文件说明 启动MongoDB有2种方式,一是直接指定配置参数,二是指定配置文件。这里先介绍配置文件,启动方式如下: mongod --config /etc/mongodb.conf 配置如下: verbose:日志信息冗余。默认false。提高内部报告标准输出或记录到logpath配置的日志文件中。要启用verbose或启用verbosity 用vvvv参数,如: verbose = true vvvv = true ps:启动verbos... 阅读全文>>
Linux下安装MongoDB相对于Redis、Memcached要简单很多,因为它不需要我们自己去编译,我们只需要下载软件包解压就可以了。 下载软件包MongoDB官网:https://www.mongodb.comMongoDB文档:https://docs.mongodb.com/manual软件包下载页面:https://www.mongodb.com/download-center/community 根据自己的操作系统选择合适的版本: 我这里使用wget进行下载,先复制页面上的下载地... 阅读全文>>