PHP核心技术与最佳实践之Hash算法
Hash表又称散列表,通过把关键字Key映射到数组中的一个位置来访问记录,以加快查找速度。这个映射函数称为Hash函数,存放记录的数组称为Hash表。
1. Hash函数
作用是把任意长度的输入,通过Hash算法变换成固定长度的输出,该输出就是Hash值。这种转换是一种压缩映射,也就是Hash值得空间通常远小于输入的空间,不输入可能会散列成相同...
分类:
编程语言 时间:
2015-04-15 09:45:39
阅读次数:
159
PHP核心技术与最佳实践之Hash表冲突
接着上一篇文章,测试后输出value1value2.当
$ht->insert(‘key12’,’value12’);
Echo $ht ->find(‘key12’);时,
发现输出value12value12.这是什么原因呢?
这个问题称为Hash表的冲突。由于insert的是字符串,采用的算法是将字符串的ASIIC码相加,按照此方法,冲突产...
分类:
Web程序 时间:
2015-04-15 09:45:07
阅读次数:
120
PHP核心技术与最佳实践之正则表达式反向引用
反向引用用于重复搜索前面某个分组匹配的文本。例如:“\1”代表分组1匹配的文本:
\b(\w+)\b\s+\1\b
要反向引用分组捕获的内容,可以使用“\k”上个例子:
\b(?\w+)\b\s+\k\b
【示例】:UBB标签代码
UBB标签用来在论坛和留言板中代替HTML,实现一些简单的HTML效果,同时防止滥用HTML出现安全问题。
...
分类:
Web程序 时间:
2015-04-14 16:41:52
阅读次数:
140
PHP核心技术与最佳实践之正则表达式匹配规则
本文介绍几种常用的匹配规则。
1. 字符组
查找数字、字母、空白很简单,因为已经有了对应这些集合的元字符,但是如果匹配没有预定义元字符的字符集合,方法很简单, 就是在方括号内列出它们。
例如:[aeiou]匹配任何一个英文元音字母,[.*?]匹配标点中的一个。注意此时方括号内的元字符失去了特殊意义。
也可以指定字符范围,例如[0-9]...
分类:
Web程序 时间:
2015-04-14 16:41:35
阅读次数:
117
PHP核心技术与最佳实践之对象的序列化
对象是一堆数据,可以把对象存储起来,以便需要时使用,这就是对象的序列化。
所谓序列化,就是把保存在内存中的各种对象状态(属性)保存起来,并且在需要时可以还原出来。下面代码实现了把内存中的对象当前状态保存到一个文件中。
$str = serialize($student);
Echo $str;
File_put_contents(‘s...
分类:
Web程序 时间:
2015-04-14 16:41:24
阅读次数:
128
'bar)); * //上传文件 * curl_setopt($ch,CURLOPT_POSTFIELDs,array('foo'=>'bar','upload'=>'@test.jpg')); * CURLOPT_HTTPHEADER * curl_setopt($c...
分类:
Web程序 时间:
2014-07-15 08:10:13
阅读次数:
358
推荐一些不错的计算机书籍。# PHP《PHP程序设计》(第2版)
–PHP语法和入门最好的书《PHP5权威编程》 –PHP入门后升级书《深入PHP:面向对象、模式与实践》(第3版)
–理解PHP中的面向对象和设计模式《高性能PHP应用开发》 –了解一些基本简单的PHP优化《PHP核心技术与最佳实践》...
分类:
Web程序 时间:
2014-05-08 10:03:34
阅读次数:
543