-
Laravel 下配置 Redis 让缓存、Session 各自使用不同的 Redis 数据库
为什么要这样做?#默认情况下,Redis 服务会提供 16 个数据库,Laravel 使用数据库 0,作为缓存和 Session 的存储。在使用的过程中觉得这个默认的设置挺不合理,因为当你在执行命令 php artisan cache:clear 的时候,会把 Session 也连带清除了,导致所有用户需要重新登录。Session 存储的其他选择:# file - 存储在文件中,读取太频繁,磁盘存储比起内存存储速度没法比,为了方便,开发时可以随便玩一玩,生产环境不建议使用; cooki...…
-
InnoDB 事务隔离级别(Mysql篇)
前言: Mysql支持MyISAM和InnoDB两种存储引擎,区别在此就不详细说明。此篇是讲述事务,所以切记自己的table是InnDB。此处大坑!在Mysql InnoDB 中,事务主要有四种隔离级别 Read uncommitted (未提交读) Read committed (已提交读) Repeatable read (可重复读) Serializable (可串行化)在理解四种隔离级别之前,我们需要先了解另外三个名词: 脏读 不可重复读 幻读脏读另一个事...…
-
redis阶段总结
今天是五一节了,学了一段时间的redis。由于项目进度原因,一直拖到现在今天做个收尾总结。PHP 使用 Redis安装开始在 PHP 中使用 Redis 前, 我们需要确保已经安装了 redis 服务及 PHP redis 驱动,且你的机器上能正常使用 PHP。 接下来让我们安装 PHP redis 驱动:下载地址为:https://github.com/phpredis/phpredis/releases。PHP安装redis扩展以下操作需要在下载的 phpredis 目录中完成:$ w...…
-
php 操作 redis 常用方法代码例子
这篇文章主要介绍了30个php操作redis常用方法代码例子,本文其实不止30个方法,可以操作string类型、list类型和set类型的数据,需要的朋友可以参考下redis的操作很多的,以前看到一个比较全的博客,但是现在找不到了。查个东西搜半天,下面整理一下php处理redis的例子,个人觉得常用一些例子。下面的例子都是基于php-redis这个扩展的。1,connect描述:实例连接到一个Redis.参数:host: string,port: int返回值:BOOL 成功返回:TRUE...…
-
PHP 冒泡排序
博主最近在项目开发中自我感觉脑袋反应比较迟钝,下班回来复习下排序算法。今天讲的是冒泡排序!<?php/** * php算法实战 * * 排序算法-冒泡排序 * * @author ff */ /** * 优化冒泡排序 * * @param array $value 待排序数组 * @return array $value 排序数组(从小到大) */ function bubble($value = []) { $flag = true; //...…
-
PHP 快速排序
高快省的排序算法—快速排序。/** * 快速排序 * * @param array $value 待排序数组 * @param array $left 左边界 (0) * @param array $right 右边界 (n-1) * * @return array $value 排序数组(从小到大) */function quick(&$value, $left, $right){ // 左右界重合 跳出 if ($left >= $right) { ...…
-
Redis 字符串
欢迎大家互相交流Redis字符串数据类型的相关命令用于管理 redis 字符串值,基本语法如下:语法redis 127.0.0.1:6379> COMMAND KEY_NAME实例redis 127.0.0.1:6379> SET runoobkey redisOKredis 127.0.0.1:6379> GET runoobkey"redis"在以上实例中我们使用了 SET 和 GET 命令,键为 runoobkey。Redis 字符串命令下表列出了常用的 redis...…
-
Redis 数据结构
layout: posttitle: Redis 数据结构date: 2017-04-25tag: Redis—博主只是想和大家分享自己Redis学习的心得Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。String(字符串)string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。string类型是二进制安全的。意思是redis的s...…
-
Redis 数据类型
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。String(字符串)string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。 string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。 string类型是Redis最基本的数据类型,一个键最大能存储512MB。 实例redis...…
-
Redis 配置篇
layout: posttitle: Redis 配置篇date: 2017-04-20tag: Redis—Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf。你可以通过 CONFIG 命令查看或设置配置项。语法Redis CONFIG 命令格式如下:redis 127.0.0.1:6379> CONFIG GET CONFIG_SETTING_NAME实例redis 127.0.0.1:6379> CONFIG GET loglevel1) ...…
-
Redis详细解说
1. Redis 简介•Redis是一款开源的、高性能的键-值存储(key-value store)。它常被称作是一款数据结构服务器(data structure server)。Redis的键值可以包括字符串(strings)类型,同时它还包括哈希(hashes)、列表(lists)、集合(sets)和 有序集合(sorted sets)等数据类型。 对于这些数据类型,你可以执行原子操作。例如:对字符串进行附加操作(append);递增哈希中的值;向列表中增加元素;计算集合的交集、并集与...…
-
Redis实现高并发下的抢购、秒杀功能
博主最近在项目中遇到了抢购问题!现在分享下。抢购、秒杀是如今很常见的一个应用场景,主要需要解决的问题有两个:1 高并发对数据库产生的压力2 竞争状态下如何解决库存的正确减少(”超卖”问题)对于第一个问题,已经很容易想到用缓存来处理抢购,避免直接操作数据库,例如使用Redis。重点在于第二个问题常规写法:查询出对应商品的库存,看是否大于0,然后执行生成订单等操作,但是在判断库存是否大于0处,如果在高并发下就会有问题,导致库存量出现负数优化方案1:将库存字段number字段设为unsigned...…
-
Git 常用资源
layout: posttitle: Git 常用资源date: 2017-03-28tag: Git—库管理克隆库git clone https://github.com/php/php-src.gitgit clone --depth=1 https://github.com/php/php-src.git # 只抓取最近的一次 commit历史管理查看历史git log --pretty=oneline filename # 一行显示git show xxxx # 查看某次修改标签功...…
-
PHP判断手机端、PC端 、微信代码实例
在这里博主为大家分享了PHP判断的两个实例,一是PHP判断是手机端还是PC端,二是PHP判断是否是微信浏览器,供大家参考,具体内容如下1、判断是否是手机端function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) { return true; } // 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息 if (isset($...…
-
高级篇 laravel Eloquentorm
layout: posttitle: 高级篇 Laravel-EloquentORMdate: 2017-03-14tag: Laravel—查询作用域#全局作用域#全局作用域允许你对给定模型的所有查询添加约束。使用全局作用域功能可以为模型的所有操作增加约束。 软删除功能实际上就是利用了全局作用域功能实现一个全局作用域功能只需要定义一个实现Illuminate\Database\Eloquent\Scope接口的类,该接口只有一个方法apply,在该方法中增加查询需要的约束<?ph...…
-
Laravel Eloquentorm 进阶部分
layout: posttitle: Laravel-EloquentORM 进阶部分date: 2017-03-13tag: Laravel—关联关系#One To One假设User模型关联了Phone模型,要定义这样一个关联,需要在User模型中定义一个phone方法,该方法返回一个hasOne方法定义的关联<?phpnamespace App;use Illuminate\Database\Eloquent\Model;class User extends Model{ ...…
-
Laravel-EloquentORM 基础
欢迎大家关注我的其他Github博客和简书,互相交流!今天学习了Laravel中的ORM基础部分,现在分享一下。Eloquent ['eləkwənt] 时,数据库查询构造器的方法对模型类也是也用的,使用上只是省略了DB::table(‘表名’)部分。在模型中使用protected成员变量$table指定绑定的表名。<?phpnamespace App;use Illuminate\Database\Eloquent\Model;class Flight extends Mode...…
-
Laravel学习篇-数据库操作和查询构造器
最近博主在学习号称世界最牛框架–Laravel。其实学习框架也就是学习框架的思想! 我想在我的博客中记录我在laravel学习中的一些心得,欢迎大家关注我的其他Github博客和简书,互相交流! 版本:Laravel 5.2数据库:mysql 5.7php:php7.1数据库操作和查询构造器在Laravel中执行数据库操作有两种方式,一种是使用\DB外观对象的静态方法直接执行sql查询,另外一种是使用Model类的静态方法(实际上也是Facade的实现,使用静态访问方式访问Model...…
-
Ajax jsonp 跨域实例
layout: posttitle: Ajax Jsonp 跨域实例date: 2017-03-11tag: Ajax— 欢迎大家关注我的其他CSDN博客和简书,互相交流!1.什么是jsonp:JSONP(JSON with Padding)是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式)。2.JSONP有什么用?由于同源策略的限制,XmlHttpRequest只允...…
-
Ajax Access-Control-Allow-Origin实现跨域访问用法
欢迎大家关注我的其他CSDN博客和简书,互相交流!如果跨域使用POST方式,可以使用创建一个隐藏的iframe来实现,与ajax上传图片原理一样,但这样会比较麻烦。所以通过设置Access-Control-Allow-Origin来实现跨域访问比较简单。下面看下我的demo,我的地址是www.text.com(配置虚拟主机)。例如:客户端的域名是www.text.com,而请求的域名是www.text.com如果直接使用ajax访问,会有以下错误XMLHttpRequest canno...…