重写了mPHP的视图类,更好的实现合并压缩多个js与css

以前为了减少浏览器打开页面需要加载的外部资源总数,就为mPHP框架写了一个file_merger函数,再通过非主流的方式实现了合并多个CSS或JS的功能.最初确实没考虑清楚,直接就把需要加载的css跟js文件全部写在controller控制器里,进行合并处理后再输出到页面中.这种方式确实给controller控制器​增加了额外的代码,更不美观.

查看全文 »

QQ互联开发记录

别忘了添加协作者测试号,这是一个很容易被忽略的一个地方,因为腾讯藏得太好了.在网站的信息编辑里,分有两个栏目,网站基本信息、补充信息(非必填),然而测试帐号的添加地址就藏在这非必填的栏目中!没有测试帐号,在开发的时候,会出现如下提示

查看全文 »

接触discuz从吐槽到反思

最近这一阵子都在忙着研究discuz的互动社区跟个人空间,因为我没有正式使用过,没有实战经验,所以想从discuz的架构思想着手,就过了一遍DZ的核心代码.庆幸的是,在浏览代码的过程中,有种似曾相识的感觉,虽然discuz不是纯粹的MVC模式,但是核心思想是值得借鉴的.

查看全文 »

基于UCenter用户中心把第三方网站的会员与Discuz关联起来

然而问题就来了,怎么把现有网站的用户跟discuz关联到一起呢?后来一同事跟我提到Comsenz旗下UCenter(用户中心),跟我说它能无缝整合多个网站的会员,很容易就能解决这一问题,然后把UCenter的开发文档链接发给我.于是我这几天就带着问题开始学习UCenter究竟是怎么样实现的无缝管理用户的.

查看全文 »

调整nginx配置支持ThinkPHP的PATH_INFO模式

最初公司的平台是让别的互联网公司承包的,网站基于ThinkPHP开发,部署在lamp环境上运行两个月了,后来综合评估了一下,还是觉得更换为lnmp环境更适合.在本地平台测试的时候发现,基于pathinfo重写规则的ThinkPHP在nginx下不兼容,官方手册也只是简单的提到低版本nginx不支持pathinfo模式,并没有过多的说明.

查看全文 »

使用nginx或apache配合PHP按需生成缩略图

很早就了解到淘宝网在图片处理方面使用了缩略图动态实时生成的技术,解决了图片服务器集群海量存储的难题,有数据指出实时生成缩略图的模式比提前全部生成好缩略图的模式为淘宝网节约了90%的存储空间.又因为按需生成的模式可以生成任意尺寸的图片,这使得网页设计师可以更加灵活的创作.

查看全文 »

分享:php小技巧的使用记录

这篇文章主要分享一些实用的PHP技巧,并简单的对比一下相应的执行效率.

查看全文 »

利用jQuery的加载机制延迟加载第三方js代码

经过反复测试,终于到网站“慢”的原因了:因为本站的所有特效都是基于jQuery运行的,而jQuery的运行机制又保证了所有的文件对象模型(Document Object Model,简称DOM)全部加载完毕,才运行jQuery代码.即使磨途歌在1ms中做出响应,但只要用户的浏览器没把dom加载完毕,jQuery代码就迟迟不会执行,导致让用户感觉到网站很慢,很慢.

查看全文 »

妙用jquery.scrollLoading.js插件,加快网页的显示速度

这篇文章介绍的js插件是基于jQuery开发的,它的功能如下:用户打开网页的时候,浏览器先加载能看得到的界面(第一屏)中的图片,第二屏、第三屏或者更下边的图片只有等到用户往下拖动滚动条,浏览器才会依次加载.这样的外部资源加载机制,能让浏览器更快的展示内容.问:为什么浏览器不使用这样的加载机制?

查看全文 »

mPHP核心框架——网站安全处理类的代码实现

​这个网站安全处理类用的比较多的应该就是安全过滤safeGPC()还有还原输出restore了.理论上,基本上能有效的过滤掉大部分的注册机、机器人对网站的骚扰.

查看全文 »