随笔分类 - PHP&mysql
摘要:/** * 计算时间戳之间的时间,返回时间数组 * $start 开始时间戳 * $end 结束时间戳 * $step 增长时间步长,默认一天 */ public function getTime($start, $end , $step = 86400, $format = false) { $t
阅读全文
摘要:例子1: $topic->user->name 在程序调用了这句话后出错 原因是没有查到user 这里不会返回空 直接报错 例子2:$id=$_POST['id'];$sql="SELECT * FORM user WHERE id='$id'";$result=$mysqli->query($sq
阅读全文
摘要:安装 点击 file --> settting --> Plugins --> Browse Repositories 搜索 CamelCase 点击 Install 重启IDEA 使用 选中需要改变的变量 使用 快捷键 shift + alt + u ,变量就会改变,直到找到需要的格式。 选中多处
阅读全文
摘要:以前用foreach,总喜欢在第二次遍历时改变value的拼写,比如 $x = array("a", "b", "c"); foreach ($x as &$value) { echo $value." "; } echo "<br/>"; foreach ($x as $value2) { ech
阅读全文
摘要:$z = $x ?? $y; //等价于下面 $z = isset($x) ? $x : $y; $z = $x ?: $y; //等价于下面 $z = $x ? $x : $y; 实例1: <?php $x = 1; $y = 2; $z = $x ?? $y; echo 'z:'.$z; $zz
阅读全文
摘要:$a && $b = $c 表示:如果$a为真,则执行$b = $c,否则不执行。 可以用if语句替代: if ($a) { $b = $c; } 其他php7写法: $a = 1;$b = 2;$c = 3; $a? :$b=$c; echo "a:$a"; echo "b:$b"; echo "
阅读全文
摘要:什么是索引? 索引(index)翻译为一个目录,用于快速定位我们想要找的数据的位置。例如:我们把一个数据库比作一本书,而索引(index)就是书中的目录,此刻要找到书的某个感兴趣的内容,我们一般是不会整本书翻完再去确认该内容在哪里,而是通过书的目录,定位到该内容章节所在页数,最后直接翻到该页面。 我
阅读全文
摘要:一般来说,事务是必须满足4个条件(ACID)::原子性(Atomicity,或称不可分割性)、一致性(Consistency)、隔离性(Isolation,又称独立性)、持久性(Durability)。 原子性:一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在
阅读全文
摘要:Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语
阅读全文
摘要:运行docker: sudo systemctl start docker 0.创建docker网络: docker network create --subnet=172.18.0.0/24 mxd 1. 复制配置文件到宿主机: # 创建宿主机目录结构 mkdir -p /www/docker/n
阅读全文
摘要:以下是广泛使用的30个SQL查询语句优化方法: 1、应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 2、对查询进行优化,首先应考虑在 where 及 order by 涉及的列上建立索引,避免全表扫描。 3、应尽量避免在 where 子句中对字段进行 n
阅读全文
摘要:1 开闭原则 1988年,勃兰特·梅耶(Bertrand Meyer)在他的著作《面向对象软件构造(Object Oriented Software Construction)》中提出了开闭原则(Open Close Principle),它的原文是这样:“Software entities sho
阅读全文
摘要:组合模式将对象组合成树形结构,以表示‘部分-整体’的层次结构。 在组合模式,客户端访问独立对象和组合对象(或称对象集合)一样。 独立对象是一个有特定功能的对象,它不引用其他任何其他对象。 组合对象则是一个提供相似功能对象的集合,主要用来管理独立对象,并为客户端提供和独立对象一样的访问方式。 接下来,
阅读全文
摘要:工厂模式,就是负责生成其他对象的类或方法。 1 类实现 比如,我们有一些类,它们都继承自交通工具类: interface Vehicle { public function drive(); } class Car implements Vehicle { public function drive
阅读全文
摘要:观察者模式,也称发布-订阅模式,定义了一个被观察者和多个观察者的、一对多的对象关系。 在被观察者状态发生变化的时候,它的所有观察者都会收到通知,并自动更新。 观察者模式通常用在实时事件处理系统、组件间解耦、数据库驱动的消息队列系统,同时也是MVC设计模式中的重要组成部分。 以下我们以订单创建为例。
阅读全文
摘要:策略模式定义了一族相同类型的算法,算法之间独立封装,并且可以互换代替。 这些算法是同一类型问题的多种处理方式,他们具体行为有差别。 每一个算法、或说每一种处理方式称为一个策略。 在应用中,就可以根据环境的不同,选择不同的策略来处理问题。 以数组输出为例。 数组的输出有序列化输出、JSON字符串输出和
阅读全文
摘要:适配器模式,即根据客户端需要,将某个类的接口转换成特定样式的接口,以解决类之间的兼容问题。 如果我们的代码依赖一些外部的API,或者依赖一些可能会经常更改的类,那么应该考虑用适配器模式。 下面我们以集成支付宝支付功能为例。 1 问题 假设支付宝支付类的功能如下: /** * 支付宝支付类 */ cl
阅读全文
摘要:单例模式,正如其名,允许我们创建一个而且只能创建一个对象的类。 这在整个系统的协同工作中非常有用,特别明确了只需一个类对象的时候。 那么,为什么要实现这么奇怪的类,只实例化一次? 在很多场景下会用到,如:配置类、Session类、Database类、Cache类、File类等等。 这些只需要实例化一
阅读全文
摘要:大部分情况下,尤其是记录数量较少的情况下Mysql总是能正常运转的很好,但不可避免的,随着数据库记录数的增长以及SQL语句越来越复杂,总会有一些实际效果与数据库或SQL设计人员理解相违背的情况,这就需要开发者对Mysql的原理和存在的问题有一个基本的认识。本文主要探讨了Mysql索引的使用和相关知识
阅读全文
摘要:一、故事背景 项目组联系我说是有一张 500w 左右的表做 select count(*) 速度特别慢。 二、原 SQL 分析 Server version: 5.7.24-log MySQL Community Server (GPL) SQL 如下,仅仅就是统计 api_runtime_log
阅读全文