野蛮秘籍

冰冻三尺非一日之寒

设计模式之装饰器模式

装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 UML图 示例代码: <?php interface Booking { public funct...

2018-12-21 00:06:01

阅读数 31

评论数 0

设计模式之策略模式

在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。 UML图 示例代码 &am...

2018-12-19 23:34:49

阅读数 114

评论数 0

设计模式之工厂模式

工厂模式 工厂模式具体可分为三类模式:简单工厂模式,工厂方法模式,抽象工厂模式; 1.简单工厂模式 又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创...

2018-12-19 00:05:20

阅读数 37

评论数 0

phpstorm+xdebug远程调试配置

1、xdebug的安装 参考 :http://blog.csdn.net/fationyyk/article/details/78963683(mac版本) centos下安装 // 下载 git clone git://github.com/xdebug/xdebug.git // 解...

2018-12-15 07:43:18

阅读数 42

评论数 0

Redis面试定期更新

Redis支持的数据类型? String字符串: 格式: set key value string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。 string类型是Redis最基本的数据类型,一个键最大能存储512MB。 Hash(哈希) 格...

2018-12-14 22:33:01

阅读数 58

评论数 0

PHP获取ip地址(REMOTE_ADDR,HTTP_VIA, HTTP_X_FORWARDED_FOR)

一、没有使用代理服务器的情况: REMOTE_ADDR = 您的 IP HTTP_VIA = 没数值或不显示 HTTP_X_FORWARDED_FOR = 没数值或不显示 二、使用透明代理服务器的情况:Transparent Proxies REMOTE_ADDR = 最后一个代...

2018-12-13 22:13:52

阅读数 62

评论数 0

composer 自定安装包路径

1、Github新建一个项目 代码结构如下 composer.json配置如下 { "name": "fationyyk/self-test-package", "type&quo...

2018-12-05 00:04:55

阅读数 461

评论数 0

nginx错误及解决方案集锦

403 forbidden 1、由于启动用户和nginx工作用户不一致所致 查看nginx的启动用户,发现是nobody,而为是用root启动的 命令:ps aux | grep "nginx: worker process" | awk' {print ...

2018-04-29 17:36:28

阅读数 390

评论数 0

linux跳板机自动登陆服务器脚本

新建login.sh脚本 脚本内容如下 #!/usr/bin/expect -f set timeout 1 // 超时 等待时间 set pass [lindex $argv 0] // 获取第一个输入参数 本人实际使用需要动态密码 set password xxxxx //静态密码 spa...

2018-04-18 20:28:01

阅读数 899

评论数 0

mac下iterm2 sz rz上传文件配置

1、安装 brew install lrzsz #这里以homebrew方式安装 2、脚本 拉取 https://github.com/mmastrac/iterm2-zmodem 两个sh文件,将他们拷贝到/usr/local/bin文件夹中。必须具有x权限 3、配置 打开iter...

2018-04-17 22:34:44

阅读数 1240

评论数 1

mac VPN连接 L2TP-VPN服务器没有响应

本人实际测试的解决办法: 进入该目录下发现没有该文件,直接创建,已有该文件的直接删除,然后vpn配置也删除,重新配置。 在/etc/ppp目录下新建options文件:sudo vim /etc/ppp/options 在options文件中输入: plugin L2TP.ppp l...

2018-01-27 09:21:48

阅读数 7102

评论数 2

最大连续和

思路:设sum[i] 为前i个元素中,包含第i个元素且和最大的连续子数组,result 为已找到的子数组中和最大的。对第i+1个元素有两种选择:做为新子数组的第一个元素、放入前面找到的子数组。 sum[i+1] = max(a[i+1], sum[i] + a[i+1]) result = m...

2018-01-18 14:56:54

阅读数 134

评论数 0

charles抓包配置

以mac环境为例说明 1、Charles安装 官网下载安装Charles: https://www.charlesproxy.com/download/ 2、Charles破解 一个在线破解工具,很方便。 https://www.zzzmode.com/mytools/charles/...

2018-01-18 10:42:50

阅读数 2453

评论数 0

$_SERVER中的SERVER_NAME 和HTTP_HOST的区别

当满足以下三个条件时,两者会输出相同信息。 1. 服务器为80端口 2. apache的conf中ServerName设置正确 3. HTTP/1.1协议规范 不同点: 通常情况: _SERVER[“HTTP_HOST”] 在HTTP/1.1协议规范下,会根据客户端的HTTP请求输出...

2018-01-17 14:34:16

阅读数 5015

评论数 0

静态方法里不能使用$this

静态方法随着类的加载而加载,静态方法是优先于对象而存在的。当我们加载一个类的时候,对象还没有存在,而this代表的是对象的引用,试问当我们加载类的时候对象都没有,又怎么可以使用this呢?答案显而易见 this是指当前对象,静态方法是通过类调用的方法,不需要实例化,既然不需要实例化,就没有当前对...

2018-01-17 11:02:46

阅读数 1569

评论数 0

约瑟夫问题

问题描述 约瑟夫问题:有n只猴子,按顺时针方向围成一圈选大王(编号从1到n),从第1号开始报数,一直数到m,数到m的猴子退出圈外,剩下的猴子再接着从1 开始报数。就这样,直到圈内只剩下一只猴子时,这个猴子就是猴王,编程求输入n,m后,输出最后猴王的编号。 /** * get_king_mon...

2018-01-16 14:48:12

阅读数 94

评论数 0

js多次上传同一图片失效问题

项目中遇到上传图片,需要本地预览效果,测试时无意间发现,当选择A图片,然后更换为B图片,完全正常;当选择A图片,删除该图片,再重新上传A图片后,发现不会触发上传,出现了bug; 解决办法: 1️⃣、来回切换input的type属性值,可以是‘text’,’button’,’button’….,...

2018-01-16 10:12:06

阅读数 929

评论数 0

angularjs 时间格式问题

PHP开发中,一般存的时间戳是秒数,angularjs的时间戳是毫秒数,所有在视图里处理时间的时候,需要把秒 * 1000 转换为毫秒 // 这里的dt1单位是秒 {{ dt1 * 1000 | date:'yyyy-MM-dd HH:mm:ss' }} 如果不转化为毫秒,就会出现日期显示...

2018-01-16 10:02:27

阅读数 328

评论数 0

phpstorm git使用

1、配置git 2、新建项目 3、关联远程服务器 开发的时候一般我们会有自己的github服务器(拉取项目代码),测试服务器(部署代码),本地(git),所以我们在修改完代码后,应该先部署到测试服务器上进行测试。这就需要本地与测试服务器之间进行关联。phpstorm里有deploy工...

2018-01-16 09:49:06

阅读数 15216

评论数 1

virtual box 存储文件vdi迁移

最近在使用virtual box 时 不小心把存储文件放到了系统盘,导致系统盘空间紧张,于是就想办法迁移vdi文件,此文章记录下迁移过程,遇到类似情况的朋友可以尝试下。 1、迁移原始文件到新的盘 不放心的朋友可以先复制一份到别的盘,比如我的是win10 系统,virtualbox vdi文件默...

2018-01-13 17:45:58

阅读数 1646

评论数 0

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