PHP自学日记

————–01-05——————–
*
* 文件操作
*
—————————————

读取整个文件: readfile(), fpassthru(), file()
读取一个字符: fgetc()
读取任意长度: fread()
查看文件是否存在: file_exists()
确定文件大小: filesize()
删除一个文件: unlink()
在文件中定位: rewind(), fseek(), ftell()

文件锁定: flock()


————-01-05——————–
*
* 数组操作
*
—————————————

指定范围数组: range()
数组值赋给变量: list()
返回数组中当前的键/值对并将数组指针向前移动一步: each()
将数组的内部指针指向第一个单元: reset()
数组排序: sort(), asort(), ksort()
数组反向排序: rsort(), arsort(), krsort()
数组自定义排序: usort()
数组随机排序: shuffle()
返回一个单元顺序相反的数组: array_reverse()
数组中随机取出一个或多个单元: array_rand()
播下随机数发生器种子: srand() // 例: srand((float) microtime() * 10000000);
分割字符串: explode()
在数组中浏览: each(), current(), reset(), end(), next(), pos(), prev()
对数组的每一个元素应用任何函数: array_walk()
统计数组元素个数: count(), sizeof(), array_count_values()
数组转换成标量变量: extract()
将回调函数作用到给定数组的单元上: array_map()

————–01-07——————–
*
* 字符串格式化
*
—————————————

字符串处理: chop(), ltrim(), trim()
HTML格式化: nl2br()
打印格式化字符串: sprintf(), printf(), vprintf(), vsprintf()
转成大写字符: strtoupper()
转成小写字符: strtolower()
首字符为大写: ucfirst()
每个首字符为大写: ucwords()
格式化字符串以便存储: addslashes(), stripslashes()
分割字符串: explode(), strtok()
连接字符串: implode(), join()
截取子字符串: substr()
字符串排序: strcmp(), strcasecmp(), strnatcmp()
字符串长度: strlen()
字符串中查找字符串: strstr(), strchr(), strrchr(), stristr()
查找子字符串位置: strpos(), strrpos()
替换子字符串: str_replace(), substr_replace()

—————01-08——————
*
* 正则表达式
*
————————————–
限定a到z之间的字符: [a-z]at // aat, bat, cat… zat
列出一个集合: [aeiou]at // aat, eat, iat, oat, uat
描述一个范围: [a-zA-Z] // 任何大小写字母
不属于某个集: [^a-z] // 非小写字母集
表示重复0到多次: * (very )* large // large, very large, very very large…
表示重复1到多次: + (very )+ large // very large, very very large…
限定重复的次数: (very ){1, 3} // 允许重复次数是1到3次, very , very very , very very very
限定重复的次数: (very )2, } // 允许重复次数是2到多次, very very , very very very …
^在开头处匹配: ^bob // 在开始处匹配bob
$在结尾处匹配: bob$ // 在结尾处匹配bob
匹配a到z之间一个字符的字符串: ^[a-z]$
|选择匹配: com|edu|net // 匹配com, edu或net其中一个
匹配特殊字符: \, \. \` \\ (要在前面加上\)
要使$字符在模式匹配: \\\$ // 在PHP解析为\$, 在正则解析成 $

————————————————–
方括号外面特殊字符摘要(POSIX)
————————————————–
字符 意义
————————————————–
\ 转义字符
^ 在字符串开始匹配
$ 在字符串结束匹配
. 匹配除换行符(\n)之外的字符
| 选择分支的开始(读为或)
————————————————–
( 子模式的开始
) 子模式的结束
* 重复0次或更多次
+ 重复一次或更多次
{ 最小/最大量记号的开始
} 最小/最大量记号的结束
————————————————–
? 标记一个子模式为可选的
^ 非, 仅用在开始位置
– 用于指明字符范围
————————————————–

正则匹配email: ^[a-zA-Z0-9_\-.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-.]+$
正则查找子字符串: ereg(), eregi() // eregi()不区分大小写
正则分割字符串: split(),

注: 正则表达式函数运行效率要低于字符串函数

——————–01-07—————–
*
* 代码利用与函数
*
——————————————

包含文件: require(), require_once(), include(), include_once()
函数调用不区分大小写
可变函数?? $name()
判断是否等于false, 必须使用”===”返回类型, 确保”false”不会与0混淆

——– page 140

暂无评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注