02

50 个最佳的轻量级 JavaScript 框架和库

正如你期望的,文中的一些插件可用来创建滑块、图片库、响应式菜单、弹出式窗口以及许多其他常见的组件。同时,你也可以发现一些能够提供独特功能的插件,像旁注工具、GIF 预览、动画图标等。50 个最佳的轻量级 JavaScript 框架和库,前端框架,前端库,JS框架

或许,你可能还想了解下 2015 年 50 个最佳的 JavaScript 集合,以及 50 个最佳的免费 jQuery 插件Continue reading

01

php时间加减,加一天,一小时

php时间加减,php时间加一天,php时间一小时

Continue reading

01

thinkphp5.1中容器(Container)和门面(Facade)的实现

thinkphp 5.1中引入了容器(Container)和门面(Facade)这两个新的类

官方文档已经给出了定义:

容器(Container)实现类的统一管理,确保对象实例的唯一性。

门面(Facade)为容器(Container)中的类提供了一个静态调用接口,相比于传统的静态方法调用, 带来了更好的可测试性和扩展性,你可以为任何的非静态类库定义一个facade类。

深入源码,我们来看看它到底是如何实现的: Continue reading

24

composer为原有项目新添加扩展的安全方法

composer为原有项目新添加扩展的安全方法,使用composer require new/package这种方式来安装。

如果需要增加版本号,则composer require "foo/bar:1.0.0"

另外,在手动修改 composer.json 添加扩展包后,composer update new/package 进行指定扩展包更新的方式,也可以正确的安装,不过不建议使用这种方法,因为,一旦忘记敲定后面的扩展包名,就会进入万劫不复的状态。

composer的三个常用命令install, update, require,注意使用环境。 Continue reading

15

Linux中修改文件时间属性atime(Access time)、mtime(Modified time)、ctime(Change time)

在Linux中,文件没有“创建时间”这个说法。Linux中的文件的时间属性只有三个:atime(Access time)、mtime(Modified time)、ctime(Change time)。不过,有时有人把ctime理解为create time(创建时间),这是不对的,为什么呢?因为,我们知道一个文件的创建时间只有一次,按这个理论,创建时间是不允许修改的,即一个文件一旦创建,它的ctime值就固定不变;但事实呢?是可以改变的。 Continue reading

13

百度推送错误提示{“error”:401,”message”:”token is not valid”}

百度推送错误提示{"error":401,"message":"token is not valid"}

按着官方给出的PHP提交数据方法,怎么弄都是上面的提示,曾经放弃过,但是一直过不来那个坎。

这几天有客户来问,要做这个,还给了我一个织梦的百度推送插件,叫我参考。

那插件也是用得百度官方代码,只是做了个封装,没有测试可用性,但是我认为他还是不可用的。

我用重写了脚本,还是不可用。

最后最后的一个测试,恍然大悟,开悟了,哈哈。

就差API地址最后的这个字符&,官方是没有加的,不知道官方代码是在什么环境下可用。

 

08

PHP5.4以上版本htmlspecialchars()输出空的解决办法

PHP5.4以上版本htmlspecialchars()输出空的解决办法

从旧版升级到php5.4,恐怕最麻烦的就是htmlspecialchars这个问题了!当然,htmlentities也会受影响,不过,对于中文站来说一般用htmlspecialchars比较常见,htmlentities非常少用到。

可能老外认为网页普遍应该是utf-8编码的,于是苦了那些用GB2312,GBK编码的中文站……!

gbk字符集下输出为空…utf-8下,输出正常。

为什么呢,原因在于5.4.0对这个函数的变化:

5.4.0 The default value for the encoding parameter was changed to UTF-8.

原因是什么呢? Continue reading