摘要:
echo是一个独立的JavaScript、轻量级的、延迟图片加载插件,echo压缩后体积不到1k,使用html的标准data-*属性,echo支持IE8+。
使用echo.js非常简单,在网页需要延迟加载的img标签中,设置data-echo属于指向需要加载的图片路径,src属性指向默认加载图片路径。然后引入echo.min.js,并初始化echo即可。 阅读全文
摘要:
NaN,即非数值是一个特殊的数值,这个数值用于表示一个本来要返回数值的操作数未返回数值的情况下。 阅读全文
摘要:
HTTP缓存中使用期和新鲜度算法 阅读全文
摘要:
有时候需要将数据保存到文本中,这个情况下就使用不了print_r等函数,查了下php手册,发现没有改类型函数,所以自己动手写了一个:
/* 输出数据
* @data 输入数据
* @return 返回字符串 string
*/
function format_data($data)
{
$msg='';
if(is_array($data))
{
foreach($data as $key=>$value)
{
if(is_array($value)){
$msg .= ' '.$key.'-> { ';
$msg .= format_data($value).' } ';
}else{
$msg .= ' '.$key.'->'.$value;
}
}
}else{
$msg 阅读全文
摘要:
浏览器不允许Ajax站请求,所以存在Ajax跨域问题,目前主要有两种办法解决。
1、在请求页面上使用Access-Control-Allow-Origin标头。
使用如下标头可以接受全部网站请求:
header('Access-Control-Allow-Origin:*')
使用如下标头可以接受指定网站请求:
header('Access-Control-Allow-Origin:http://www.abc.com')
所以,服务器写法:
header('Access-Control-Allow-Origin:*');
die( json_encode(array('msg'=>'msg....')) );
ajax写法和平常一样: 阅读全文
摘要:
Ci框架中Hooks可以理解:在框架的执行流程过程中,允许开发者在固定的某些时间点上(如:调用控制器前,调用控制器后等时间点上),调用其他函数来扩充CI框架执行流程的一种方法。技术上来就是通过配置文件,调用其他函数执行;
1、CI框架Hooks使用:
1.1、修改application/config/config.php文件,enable_hooks默认为FLASE,改成TRUE 阅读全文
摘要:
最近在学习CI框架源码,一边看源码,一边在github上面写中文注释,https://github.com/pandancode/CI-note,有兴趣的同学可以看看。
index.php流程:
1、定义开发模式,调试,开发,发布
2、设置system,application等目录
3、设置默认控制器(不建议在index.php设置)
4、设置用户配置
5、检查路径
6、定义路径常量
7、加载引导程序 system/core/codeigniter.php 阅读全文
摘要:
需求:抢码功能
要求:
1、特定时间段才开放抢码;
2、每个时间段放开的码是有限的;
3、每个码不允许重复;
实现:
1、在不考虑并发的情况下实现:
function get_code($len){
$CHAR_ARR = array('1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','X','Y','Z','W','S','R','T');
$CHAR_ARR_LEN = count($CHAR_ARR) - 1;
$code = '';
while(--$len > 0){ $code .= $CHAR_ARR[rand(0,$CHAR_ARR_LEN)]; }
return $code;
}
$pdo = new PDO('mysql:host=localhost;dbname=ci_test','root 阅读全文