代码改变世界

PHP IPV6的判断

2011-04-29 15:21 by 卫佳, 845 阅读, 0 推荐, 收藏, 编辑
摘要:IPV6的时代快要到来了,发一个验证IPV6地址是否合法的正则。 <?php // literally from the ABNF in rfc3986 (thanks to 'WCP') function validateIPv6($IP) { replica handbags return preg_match('/\A (?: (?: (?:[a-f0-9]{1,4}:){6} | ::(?:[a-f0-9]{1,4}:){5} | (?:[a-f0-9]{1,4})?::(?:[a-f0-9]{1,4}:){4} | (?:(?:[a-f0-9]{1,4} 阅读全文

foreach的使用

2011-04-29 15:20 by 卫佳, 226 阅读, 0 推荐, 收藏, 编辑
摘要:foreach 通过在 $value 之前加上 & 很容易就能修改数组的单元,如:PHP代码foreach($arras&$value){ $value.='4';// microfiber cloth }但这个用法也很容易造成错误,而且也不容易找。看例子更直截了当:PHP代码<?php $arr=array('a','b','c'); $arr2=array('d','e','f'); foreach($arras&$value){//习惯用$valu 阅读全文

php大型文件上传进度条的实现

2011-04-29 15:20 by 卫佳, 231 阅读, 0 推荐, 收藏, 编辑
摘要:目前我知道的方法有两种,一种是使用PHP的创始人 RasmusLerdorf 写的APC扩展模块来实现(http://pecl.php.net/package/apc),另外一种方法是使用PECL扩展模块 uploadprogress实现(http://pecl.php.net/package/uploadprogress) 我这里举两个分别实现的例子供参考,更灵活的应用根据自己需要来修改。APC实现方法:安装APC,参照官方文档安装,可以使用PECL模块安装方法快速简捷,这里不说明配置php.ini,设置参数 apc.rfc1867=1 ,使APC支持上传进度条功能,在APC源码说明文档里面 阅读全文

PHP 几个实用的HTTP函数

2011-04-29 15:20 by 卫佳, 166 阅读, 0 推荐, 收藏, 编辑
摘要:1. sys_getloadavg()sys_getloadavt()可以获得系统负载情况。该函数返回一个包含三个元素的数组,每个元素分别代表系统再过去的1、5和15分钟内的平均负载。与其让服务器因负载过高而宕掉,不如在系统负载很高时主动die掉一个脚本,sys_getloadavg()就是用来帮你实现这个功能的。 不过很遗憾,该函数在windows下无效Wholesale MBT shoes。2. pack()Pack()能将md5()返回的32位16进制字符串转换为16位的二进制字符串,可以节省存储空间。3. cal_days_in_month()cal_days_in_month()能够 阅读全文

PHP 判断语言跳转

2011-04-28 16:52 by 卫佳, 494 阅读, 0 推荐, 收藏, 编辑
摘要:当来访者浏览器语言是中文就进入中文版面,国外的用户默认浏览器不是中文的就跳转英文页面。PHP代码:<? $lan = substr(?$HTTP_ACCEPT_LANGUAGE,0,5); if ($lan == "zh-cn") print("<meta http-equiv='refresh' content = '0;URL = gb/index.htm'>"); else print("<meta http-equiv='refresh' content =  阅读全文

PHP和JSON

2011-04-28 16:49 by 卫佳, 260 阅读, 0 推荐, 收藏, 编辑
摘要:互联网的今天,AJAX已经不是什么陌生的词汇了。说起AJAX,可能会立即想起因RSS而兴起的XML。XML的解析,恐怕已经不是什么难题了,特别是PHP5,大量的XML解析器的涌现,如最轻量级的SimpleXML。不过对于AJAX来说,XML的解析更倾向于前台Javascript的支 持度。我想所有解析过XML的人,都会因树和节点而头大。不可否认,XML是很不错的数据存储方式,但是其灵活恰恰造成了其解析的困难。当然,这里所指的 困难,是相对于本文的主角--JSON而言。JSON为何物?我就不重复概念了。通俗的说,它是一种数据的存储格式,就像PHP序列化后的字符串一样。它是一种数据描述。比如我们将 阅读全文

XML和MYSQL转换--PHP实现

2011-04-28 16:46 by 卫佳, 430 阅读, 0 推荐, 收藏, 编辑
摘要:mysql2xml.php类文件:用于备份MySQL数据的!PHP代码<?php classMySQL2XML{ protected$conn; protected$result; protected$tables; protected$saveFolder='datas/'; publicfunction__construct($config=NULL){ if($config!==NULL&&is_array($config)){ $this->connect($config); } } publicfunctionconnect($config 阅读全文

PHP提高编程效率--引入缓存机制

2011-04-28 16:45 by 卫佳, 172 阅读, 0 推荐, 收藏, 编辑
摘要:用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它 是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。2、$row[’id’] 的速度是$row[id]的7倍。3、echo 比print 快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo $str1,$str2。4、在执行for循环之前确定最大循环数,不要每循环 阅读全文

java的继承和接口实现

2011-04-27 16:44 by 卫佳, 1055 阅读, 0 推荐, 收藏, 编辑
摘要:Java是面向对象的语言,而运行时多态性是面向对象程序设计代码重用的一个最强大机制,动态性的概念也可以被说成“一个接口,多个方法”。 Java实现运行时多态性的基础是动态方法调度,它是一种在运行时而不是在编译期调用重载方法的机制,下面就继承和接口实现两方面谈谈java运行时多态 性的实现。一、通过继承中超类对象引用变量引用子类对象来实现举例说明:1. //定义超类superA 2. classsuperA 3. { 4. inti=100; 5. voidfun() 6. { 7. System.out.println(“ThisissuperA”); 8. } 9. } 10. //定义su 阅读全文

final和static

2011-04-27 16:44 by 卫佳, 170 阅读, 0 推荐, 收藏, 编辑
摘要:final定义的变量可以看做一个常量,不能被改变; final定义的方法不能被覆盖; final定义的类不能被继承。 final static 就是再加上static的特性就可以了 static 和final是没有直接关系的 static 是在内存中分配一块区域,供整个类通用,所有的类的对象都享有它的共同的值 static 和final的区别 一、static : 什么情况下我们要使用static呢? 1、只想用一个存储区域来保存一个特定的数据——无论要创建多少个对象,甚至根本不创 建对象。 2、我们需要一个特殊的方法,它没有与这个类的任何对象关联。也就是说,即使没有创建对象,也需要一个能调用 阅读全文