随笔分类 -  PHP

PHP preg_match的简单使用,验证邮箱地址
摘要:1 <?php 2 function match_email($email) { 3 $pattern = "/\w+@(\w|\d)+\.\w{2,3}/i"; 4 preg_match($pattern, $email, $matches); 5 return $matches; 6 } 7 8 $email1 = "test@qq.com"; 9 $email2 = "test@163.com";10 $email3 = "163@qq163.com";11 $email4 = "... 阅读全文
posted @ 2012-08-11 18:25 ZimZz 阅读(3785) 评论(0) 推荐(0) 编辑
PHP变参函数的实现
摘要:<?php function unspecifiedParamFunc() { $paramNum = func_num_args(); #获取参数个数 $params = func_get_args(); #获取参数值 var_dump($paramNum, $params); } unspecifiedParamFunc(array(1, "ok"), false, 100);?>输出:int(3) array(3) { [0]=> array(2) { [0]=> int(1) [1]=> s... 阅读全文
posted @ 2012-08-10 12:49 ZimZz 阅读(825) 评论(0) 推荐(0) 编辑
PHP中的VC6,VC9,TS,NTS
摘要:以windows为例,看看下载到得php zip的文件名php-5.4.4-nts-Win32-VC9-x86.zipVC6:legacy Visual Studio 6 compiler,是使用这个编译器编译的。VC9:Visual Studio 2008 compiler,就是这个编译器编译的。这个其实没有什么太大的影响,因为从php 5.3,已经没有vc6版本提供下载了TS:Thread Safe 线程安全, 执行时会进行线程(Thread)安全检查NTS:Non Thread Safe 非线程安全, 在执行时不进行线程(Thread)安全检查我使用Apache+PHP的模式下,一般是把 阅读全文
posted @ 2012-07-02 07:14 ZimZz 阅读(1475) 评论(0) 推荐(0) 编辑
PHP文件操作之,插入某行,删除某行,获取行号
摘要:1 #在需要查找的内容后一行新起一行插入内容 2 function insertAfterTarget($filePath, $insertCont, $target) 3 { 4 $result = null; 5 $fileCont = file_get_contents($filePath); 6 $targetIndex = strpos($fileCont, $target); #查找目标字符串的坐标 7 8 if ($targetIndex !== false) { 9 #找... 阅读全文
posted @ 2012-06-16 00:08 ZimZz 阅读(6353) 评论(0) 推荐(0) 编辑
[转载]PHP导出数据库数据字典脚本
摘要:1 <?php 2 /** 3 * 生成mysql数据字典 4 * 5 * @version $id$ 6 * @author niming<287384795@qq.com> 7 */ 8 9 //配置数据库10 $dbserver = "localhost";11 $dbusername = "root";12 $dbpassword = "root";13 $database = 'mydb';14 //其他配置15 $title = '系统数据字典';16 17 $mysql_ 阅读全文
posted @ 2012-06-04 06:51 ZimZz 阅读(2018) 评论(0) 推荐(0) 编辑
PHP的命令行脚本调用
摘要:1.使用PHP命令调用php脚本接受键盘输入然后输出1 <?php2 fwrite(STDOUT, "Please input your name:\t");3 $name = trim(fgets(STDIN));4 fwrite(STDOUT, 'Hello ' . $name);5 ?>2.使用PHP命令调用php脚本并接受参数 1 <?php 2 if($argc != 3) { //限定只能输入2个参数 3 die("Wrong input, please input 2 arguments"); 4 } 5 阅读全文
posted @ 2012-05-20 22:50 ZimZz 阅读(1265) 评论(0) 推荐(0) 编辑
PHP中单引号双引号的区别
摘要:1.双引号可以解析变量表达式,单引号不能2.双引号会对换行符等转义字符进行解析,而单引号不能1 <?php2 $name = "Jack";3 echo '$nameJones, you are a good \t\tguy <br>';4 echo "{$name}Jones, you are a good \t\tguy";5 ?>页面输出$nameJones, you are a good \t\tguyJackJones, you are a good guy这里可以看到区别了,注意到我们对{$name}使 阅读全文
posted @ 2012-05-20 21:52 ZimZz 阅读(264) 评论(0) 推荐(0) 编辑
PHP的匿名函数与JAVA的匿名类的应用
摘要:一般来说匿名函数与匿名类用于回调,因为你可能并不知道回调函数或方法的具体实现,并且可能需要根据实际情况进行改变,并且匿名函数不需要使用具体的对象,也减少了开销下面看看PHP的匿名函数应用实现 1 <html> 2 <body> 3 <?php 4 interface Comparator { 5 function compare($i, $j); 6 } 7 8 function getResult($i, $j, $comparator... 阅读全文
posted @ 2012-05-19 03:01 ZimZz 阅读(1163) 评论(0) 推荐(0) 编辑
PHP输出缓存(output_buffering)小记 -- 尚有疑问
摘要:首先明确一下PHP的输出顺序1.打开了php输出缓存: echo,print -> php output_buffring -> server buffering -> browser buffering -> browser display2.未打开php输出缓存: echo,print -> server buffering -> browser buffering -> browser display另外明确一下浏览器的输出缓存:IE为256Bytes, Chrome与FireFox为1000Bytes,只有输出数据达到了这个长度或者脚本结束浏览 阅读全文
posted @ 2012-05-11 02:54 ZimZz 阅读(11399) 评论(1) 推荐(0) 编辑
PHP PDO的简单使用(query(),exec(),prepare(),Transaction,行锁)
摘要:1 <html> 2 <body> 3 <?php 4 #数据库连接 5 $dbtype = 'mysql'; 6 $host = 'localhost'; 7 $db = 'test'; 8 $user = 'root'; 9 $psw = 'china0913';10 11 $dsn = $dbtype . ':host=' . $host . ';' . 'dbname='... 阅读全文
posted @ 2012-05-08 23:18 ZimZz 阅读(16317) 评论(0) 推荐(1) 编辑
PHP实现等差数列求和(不使用乘法,循环,递归)
摘要:<html> <body> <?php function sum_n($a1, $d, $an) { //$a1为首项,$d为公差,$an为最大项 $sum = 0; $i = $a1; a: $sum += $i; $i += $d; if($i <= $an) goto a; return $sum; } ... 阅读全文
posted @ 2012-05-05 22:45 ZimZz 阅读(2679) 评论(0) 推荐(0) 编辑
字符编码小记
摘要:字符编码在内存中的存储字符编码在内存中存储决定于文件保存的格式,如UTF-8或ANSI对于UTF-8,在内存中每个中文字符占3个字节,每个英文字符占1个字节对于ANSI,在内存中每个中文字符占的字节数是变长的(中文在ANSI里代表GB2312编码),每个英文字符占1个字节字符编码在程序中的处理参看如下代码,这个文件保存的格式是UTF-8,也就是说$str在内存中占了15个字节,而$str2在内存中占 5个英文*1字节+1个中文*3字节=8字节 这是背景如图: 1 <html> 2 <body> 3 <?php 4 $str = '我擦了个去'... 阅读全文
posted @ 2012-05-05 22:19 ZimZz 阅读(268) 评论(0) 推荐(0) 编辑
PHP创建多级目录
摘要:<html> <body> <?php $path = '.\\sub1\\sub2\\sub3\\'; function mymkdir($dir){ return is_dir($dir) or (mymkdir(dirname($dir)) and mkdir($dir, 0777)); } #1.判断$dir是否是已经完全被创建好,如果创建好返回true #2.如果$dir没有完全创... 阅读全文
posted @ 2012-05-05 13:20 ZimZz 阅读(286) 评论(0) 推荐(0) 编辑
PHP 求n*m二维矩阵最大子矩阵 O(n*n*m)
摘要:1 <?php 2 #求二维矩阵的最大子矩阵 3 4 #构造求和表 5 #s[i][j]表示从1..i行,1..j列所有元素之和 6 #可以利用公式s[i][j] = s[i - 1][j] + s[i][j - 1] - s[i - 1]s[j - 1] + a[i][j]求得 7 function build_sum_tab($a) { 8 #初始化第0列和 9 for ($i = 0; $i < count($a); $i++) {10 $s[$i][0] = 0;11 for ($j = 0; $j <= $i; ... 阅读全文
posted @ 2012-05-05 02:17 ZimZz 阅读(1386) 评论(0) 推荐(0) 编辑
PHP猴子选大王问题
摘要:问题简介:n只猴子围坐成一个圈,按顺时针方向从1到n编号。然后从1号猴子开始沿顺时针方向从1开始报数,报到m的猴子出局,再从刚出局猴子的下一个位置重新开始报数,如此重复,直至剩下一个猴子,它就是大王. 这里使用一个递推公式: f[i] = 0 i = 1 f[i] = (f[i-1] + m) % 阅读全文
posted @ 2012-05-05 00:26 ZimZz 阅读(1903) 评论(0) 推荐(0) 编辑
PHP冒泡排序
摘要:1 <html> 2 <body> 3 <?php 4 function bubble_sort($array) { 5 for($i = 0; $i < count($array) - 1; $i++) { //$i为已经排过序的元素个数 6 for($j = 0; $j < count($array) - 1 - $i; $j++) { //$j为需要排序的元素个数,用总长减去$i 7 if($... 阅读全文
posted @ 2012-05-04 17:39 ZimZz 阅读(2836) 评论(0) 推荐(0) 编辑
PHP实现多线程读写文件
摘要:1 <html> 2 <body> 3 <?php 4 const MAX_RETRIES = 100; //最大重试数,此处注意,const变量不能写在function内 5 6 /** 7 * @param $file_path 文件路径 8 * @param $file_mode 打开文件模式(eg: r, r+, w, w+, a, a+, x, x+) 9 * @param $lock_mode 加锁模式(e... 阅读全文
posted @ 2012-05-04 15:07 ZimZz 阅读(3473) 评论(0) 推荐(0) 编辑
PHP遍历文件夹及子文件夹所有文件
摘要:1 <html> 2 <body> 3 <?php 4 function traverse($path = '.') { 5 $current_dir = opendir($path); //opendir()返回一个目录句柄,失败返回false 6 while(($file = readdir($current_dir)) !== false) { //readdir()返回打开目录句柄中的一个条目 7 $sub_dir = $... 阅读全文
posted @ 2012-05-04 14:03 ZimZz 阅读(23660) 评论(0) 推荐(2) 编辑
PHP中define的使用
摘要:1 <html> 2 <body> 3 <!-- define不可用于类内部 --> 4 <?php 5 define('COUNTRY', 'China'); 6 echo COUNTRY . '<br>'; 7 ?> 8 9 <!-- define的条件使用和变量赋值 -->10 <?php11 $i = 1;12 if($i > 0) { //define可以用于条件语句,cons... 阅读全文
posted @ 2012-05-04 01:58 ZimZz 阅读(2843) 评论(0) 推荐(0) 编辑
PHP中static的使用
摘要:1 <html> 2 <body> 3 <!-- 在类中的使用 --> 4 <?php 5 class TestStatic { 6 public static $country = 'China'; //在类内static可以使用public修饰 7 8 public function getCountry() { 9 return self::$country; ... 阅读全文
posted @ 2012-05-04 01:49 ZimZz 阅读(288) 评论(0) 推荐(0) 编辑