关于parseInt(“08″)和parseInt(“09″)返回0的解决办法
经常用到parseInt()转换数值,偶然发现parseInt(“08″)和parseInt(“09″)返回的是0,还以为是BUG呢,谷歌了下,才知道使用parseInt转换0开头且第二位不为x的字符时,是当做八进制转换,所以08和09就转换不了等于0了。
解决方法就是转换时,指定是十进制。parseInt(“08″,10)就可以了。
经常用到parseInt()转换数值,偶然发现parseInt(“08″)和parseInt(“09″)返回的是0,还以为是BUG呢,谷歌了下,才知道使用parseInt转换0开头且第二位不为x的字符时,是当做八进制转换,所以08和09就转换不了等于0了。
解决方法就是转换时,指定是十进制。parseInt(“08″,10)就可以了。
在使用PHPExcel导出xls文件时可以使用FreezePane方法像excel那样冻结窗格,使用方法:
$objPHPExcel = new PHPExcel(); $objPHPExcel->getActiveSheet()->FreezePane('A2'); //冻结首行 $objPHPExcel->getActiveSheet()->FreezePane('B1'); //冻结首列,A列 $objPHPExcel->getActiveSheet()->FreezePane('B2'); // 冻结首行和首列
使用ssh远程登录服务器的时候,要进行后台任务操作(比如采集),可以用命令nohup php-cgi来运行php,这样就可以关掉ssh客户端后还会在服务器上运行,运行的输出结果记录在用户目录下的nohup.out文件。
IE8给我们带来的一大特点功能,用户使用它后,每次不必打开你的网页即可在收藏夹看到你网站的最新讯息。
网页快讯制作起来非常简单,只需要在要加入的地方使用特定的CSS名称即可,如下:
<div id="homegrids"> <h2>IE8网页快讯</h2> <ul> <li><a href="...">内容1</a></li> <li><a href="...">内容2</a></li> <li><a href="...">内容3</a></li> <li><a href="...">内容4</a></li> <li><a href="...">内容5</a></li> </ul> </div>
大家可以看到在div上面有一个hslice的css class,这个class表示这个div内的内容是一个网页快讯,同时要求这个div必须指定id;还有两个固定的css分别是entry-title和entry-content分别表示网页快讯的标题和内容元素。这个神奇的功能需要我们做的事情就是指定一个id和三个css的class
在实际的网站开发中,我们经常会发现IE浏览器对资源的限制,这让人很郁闷,在不了解的时候,会浪费我们很多时间去捉虫。现在我们将IE对页面资源的限制列出来,在开发中避免这些限制。 继续阅读…
{$smarty}保留变量不需要从PHP脚本中分配,是可以在模板中直接访问的数组类型变量,通常被用于访问一些特殊的模板变量。例如,直接在模板中访问页面请求变量、获取访问模板时的时间邮戳、直接访问PHP中的常量、从配置文件中读取变量等。该保留变量中的部分访问介绍如下。
1.在模板中访问页面请求变量
我们可以在PHP脚本中,通过超级全局数组$_GET、$_POST、$_REQUEST获取在客户端以不同方法提交给服务器的数据,也可以通过$_COOKIE或$_SESSION在多个脚本之间跟踪变量,或是通过$_ENV和$_SERVER获取系统环境变量。如果在模板中需要这些数组,可以调用Smarty对象中的assign()方法分配给模板。但在Smarty模板中,直接就可以通过{$smarty}保留变量访问这些页面请求变量。在模板中使用的示例如下所示: 继续阅读…
一直都是使用DISCUZ的获取客户端IP的函数,但今日发现网站使用CDN加速后,网站统计出了问题,获取到的IP有部分是CDN节点的IP,而程序统计是以唯一IP判断,导致统计到的IP比实际IP少很多。改动获取IP的函数后恢复正常。
原获取IP的方法:
if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) { $onlineip = getenv('HTTP_CLIENT_IP'); } elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) { $onlineip = getenv('HTTP_X_FORWARDED_FOR'); } elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) { $onlineip = getenv('REMOTE_ADDR'); } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) { $onlineip = $_SERVER['REMOTE_ADDR']; } preg_match("/[\d\.]{7,15}/", $onlineip, $onlineipmatches); $onlineip = $onlineipmatches[0] ? $onlineipmatches[0] : 'unknown'; unset($onlineipmatches);
MySQL创建、删除、重建和查看索引命令、掌握创建索引、删除索引、重建索引和查看索引的命今。
1,创建索引(PRIMARY KEY,INDEX,UNIQUE)
支持创建主键索引,联合索引和普通索引命令
mysql>ALTER TABLE tbl_name ADD INDEX index_name (column list); mysql>ALTER TABLE tbl_name ADD UNIQUE index_name (column list); mysql>ALTER TABLE tbl_name ADD PRIMARY KEY index_name (column list);
2,删除索引(PRIMARY KEY,INDEX,UNIQUE)
支持删除主键索引,联合索引和普通索引命令
mysql>ALTER TABLE tbl_name DROP INDEX index_name (column list); mysql>ALTER TABLE tbl_name DROP UNIQUE index_name (column list); mysql>ALTER TABLE tbl_name DROP PRIMARY KEY index_name (column list);
假定您想只处理文件的一部分,譬如头几行或后几行,那您该怎么做呢?请使用 head(它将头 10 行发送至标准输出)或 tail (它将后 10 行发送至标准输出)。
在处理较大日志文件时,这2个命令显得很实用,比如用如下命令可以把日志的倒数10000行导出到新的文件tmp.txt,这样就能避免打开超大文件的困难。
tail apache.log -n 10000 >tmp.txt