php关于数组n个随机数分成x组,使每组值相近的算法
原创 php

php关于数组n个随机数分成x组,使每组值相近的算法

主要原理是,将数组从大到小排序,数组1先取数取第一个,数组2第2取第2个,以此类推取完第一次数组之后,判断下数组1,数组2,进行一次排序,将数据最大的排前面(理论上来说,数组1数据最大,因为从大到小排序)当数组1是最大时,让数组1取倒数第一个值(最小值),数组2取倒数第2个值,以此类推这时候,数组1取得是最小,数组2取的是第二小,会让总数开始慢慢的接近,以此类推下面是一个n个数字分2组的实例代码,
阅读全文
jscanvas合成图片实现微信公众号海报功能
原创 前端

jscanvas合成图片实现微信公众号海报功能

在微信公众号开发中,很多时候都有个需求是一张图加上头像和昵称或者其他数据生成自己的二维码海报或者是生成分享海报这个需求,php的gd库是可以实现的,但是用服务器进行图片合成,会消耗服务器大量的资源所以我们可以考虑用以下方式实现一:js的canvas图片合成方法 $(function () {      &
阅读全文
原创 php

mvc深刻理解,logic,service,model层的作用

大家在接触框架时,就应该听过了mvc,那到底什么是mvc呢?mcv 是模型(model)-视图(view)-控制器(controller)的缩写  是软件设计的一个规范Model层属于数据层,用于做数据库的操作,主要是增删查改,在基础的mvc划分中,model层还需要处理数据验证View为视图层,该层在PHP中的体现一般是模板引擎,不过本人还是建议把该层给js框架,让PHP做接
阅读全文
原创 服务架构

网站关于高并发时候的应该采取一些优化方案

前段时间第一次接触大流量并发,而那时候我还没有相关经验,所以代码写的很渣,导致服务器死了又死现在也算有点经验了,本文章主要说明下我现在能理解的一些优化方案一:架构方面1:前台采用nginx服务器的静态页面,不用php的模板引擎以及php输出(静态页面不用经过php,可以减少一些消耗)2:后端采用api方式输出,只输出数据,前端用前端框架进行渲染数据二,后端语言方面1:一切都做好缓存,根据数据的变动
阅读全文
关于js暂停执行的方法
原创 前端

关于js暂停执行的方法

JavaScript是一门单线程但是可处理异步任务的脚本语言,是没有提供sleep等类似的方法的,当有需求需要暂停js脚本时,可以使用以下的方法 单线程分析:http://blog.csdn.net/talking12391239/article/details/21168489
阅读全文
关于php的buffer(缓冲区)
原创 php

关于php的buffer(缓冲区)

传统的web php的输出数据,例如echo var_dump ....等等输出函数(语句)是经过了几个步骤,最终到浏览器展示的呢?以下是PHP的输出流程php echo,var_dump -> php output_buffering -> webServer buffer-> browser buff-> browser disp
阅读全文
原创 php

easyswoole项目示例

easyswoole是新出的基于swoole的框架,seo暂无项目示例地址:https://www.easyswoole.com/Manual/1.x/Cn/_book/所有示例暂时全放在文档,也不断的在增加中,可以加qq群:633921431  进行技术讨论
阅读全文
原创 php

关于验证码存储机制的转变

在平常的网站中,验证码用于识别是否是机器访问或是人工,防止机器大规模访问注册或暴力破解密码在一般情况下,验证码的值存储都是以session来存储的,或者存储于数据库,redis缓存等等,但是这些都避免不了一个问题:都是服务器存储的当在高并发场景下,session,文件存储都会导致php大量的读写文件,导致磁盘负载过高,或者redis缓存导致额外消耗内存性能,数据库性能等等问题那该怎么设计一个不会影
阅读全文
原创 php

php设计模式-工厂模式

本来我们要获取一个类的实例,需要用到new关键字。但是如果new 直接写到业务代码里,一个类在很多地方都实例化过,以后要是这个类出了什么问题,比如要改个名字(实际中,你更多的可能是修改构造函数方法),那么就尴尬了,需要改很多地方。工厂模式,顾名思义,就是不用new来获得实例,而是把业务类放进一个工场类里,由工厂(类)『生产』出对应的实例。<?phpclass Factory
阅读全文
本文目录
    Loading...