• MySQL 主要使用的几种索引
  • 一、索引定义MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。索引分单列索引和组合索引。单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索引包含多个列。创建索引时,你需要确保该索引是应用在 SQL 查询语句的条件(一般作为 WHERE 子句的条件)。实际上,索引也是一张表,该表保存了主键与...
  •  2019-02-26  |    程成  |    1155  |    0  |    数据库  |   MySQL  索引  数据库  优化  
  • PHP回顾--冒泡排序
  • 一、定义冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法,冒泡排序是稳定排序。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。效果图二、原理冒泡排序算法的原理如下:比...
  •  2019-02-26  |    程成  |    608  |    0  |    PHP  |   PHP  排序  冒泡  
  • 实例测试 PHP 对象的遍历
  • 对象的遍历,跟数组的遍历,一样!其实,只能遍历出对象的 “实例属性数据”。 foreach( $对象名  as   $key => $value){//这里就可以处理$key和$value//但注意:1,  $key表示的是对象 的 “属性”,$value是其对应值;2,  这里能够遍历出来的属性,只能是在该范围中的“可访问属性”(就是要考虑访问控制权限)}实例一:class A{     ...
  •  2019-02-26  |    程成  |    866  |    0  |    PHP  |   PHP  遍历  对象  实例  
  • 什么是 ORM,以及在 PHP 上的使用
  • 百度百科:对象关系映射(英语:(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换 [1]  。从效果上说,它其实是创建了一个可在编程语言里使用的--“虚拟对象数据库”。简单的说就是对象模型和关系模型的一种映射。为什么要有这么一个映射?很简单,因为现在的开发语言基本都是oop的,但是传统的数据库却是关系型的。为了可以靠贴近面向对象开发,我们想要像操作对象一样操作数...
  •  2019-02-26  |    程成  |    940  |    1  |    PHP  |   ORM  PHP  SQL  数据库  
  • PHP 判断是安卓还是ios设备
  • 下面方法中 get_device_type() 就是返回设备信息,是安卓还是IOS。这个代码是判断请求来自电脑还是手机,如果是手机的话是安卓还是IOS。<?php if(!isMobile()){     echo '请使用手机打开'; }else{     $type = get_device_type();    &nbs...
  •  2019-02-22  |    程成  |    1214  |    2  |    PHP  |   PHP  安卓  Android  IOS  
  • 什么是悲观锁?什么是乐观锁?
  • 定义:悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。 乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号等机...
  •  2019-02-20  |    程成  |    876  |    1  |    其他  |   悲观锁  乐观锁  SQL  
  • Redis 持久化存储(AOF/Snapshot)
  • Redis中数据存储模式有2种:cache-only,persistence;cache-only即只做为“缓存”服务,不持久数据,数据在服务终止后将消失,此模式下也将不存在“数据恢复”的手段,是一种安全性低/效率高/容易扩展的方式;persistence即为缓存中的数据持久备份到磁盘文件,在服务重启后可以恢复,此模式下数据相对安全。     持久化数据的方式很多,基于各种考虑面,可能最终导致的设计手段有所差异。针对互联网应用,服务提供者必须具备并发访问/数据安全/...
  •  2019-02-18  |    程成  |    887  |    0  |    数据库  |   Redis  持久化  AOF  Snapshot  
  • PHP解决高并发问题
  • 首先,这篇文章不是我写的。选自于网上,我是觉得写的很不错。虽然我想标明出自哪里,但是网上很多这一个版本的文章,都标明原创。我们通常衡量一个Web系统的吞吐率的指标是QPS(Query Per Second,每秒处理请求数),解决每秒数万次的高并发场景,这个指标非常关键。举个例子,我们假设处理一个业务请求平均响应时间为100ms,同时,系统内有20台Apache的Web服务器,配置MaxClients为500个(表示Apache的最大连接数目)。 那么,我们的Web系统的理论峰值QPS为...
  •  2019-02-18  |    程成  |    842  |    0  |    PHP  |   PHP  高并发  秒杀  
  • 什么是数据库?什么是关系型数据库?什么是非关系型数据库?
  • 本文内容:什么是数据库什么是关系数据库什么是非关系型数据库  PS:虽然这些东西都是一些比较基础常识的东西,但为了记录自己的学习之路,也为了为以后的一些突发奇想留下“坑”,所以写下了这篇博文。什么是数据库? 数据库是数据的仓库。与普通的“数据仓库”不同的是,数据库依据“数据结构”来组织数据,因为“数据结构”,所以我们看到的数据是比较“条理化”的(比如不会跟以前的普通文件存储式存储成一个文件那么不条理化,我们的数据库分成一个个库,分成一个个表,分成一条条记录,这些记录...
  •  2019-02-14  |    程成  |    765  |    0  |    数据库  |   数据库  关系型  SQL  
  • PHP 中 empty(),isset(),is_null() 使用区别
  • 开发 PHP 也有几年了,突然发现 empty(),isset(),is_null() 也不是那么明白。虽然之前查过使用区别,但是经常会忘记。。这次结合实例测试,记忆应该会深刻点。测试代码如下:$a; $b = false; $c = ''; $d = 0; $e = null; $f = array(); 一、empty() 实例测试var_dump...
  •  2019-02-14  |    程成  |    678  |    0  |    PHP  |   PHP  empty  isset  is_null