PHP:
#json
string json_encode ( mixed
v a l u e
v
a
l
u
e
[, int
o p t i o n s
o
p
t
i
o
n
s
= 0 ] ): 对变量进行 JSON 编码 string json_decode ( string
j s o n
j
s
o
n
[, bool
a s s o c
a
s
s
o
c
= false [, int
d e p t h
d
e
p
t
h
= 512 [, int
o p t i o n s
o
p
t
i
o
n
s
= 0 ]]] ): 对 JSON 格式的字符串进行编码 #xml
simplexml_load_string (string[,class,options]): 把XML字符串载入对象中,class为返回的对象类型(默认是SimpleXMLElement),options为解析的选项(如LIBXML_NOCDATA),如果失败则返回 false。 #file
file_exists (filename): 检查文件或目录是否存在 is_dir (file): 如果文件名存在并且为目录,则返回 true,如果 file 是一个相对路径,则按照当前工作目录检查其相对路径 is_file (filename): 判断给定文件名是否为一个正常的文件 is_uploaded_file (filename): 如果 filename 所给出的文件是通过 HTTP POST 上传的则返回 TRUE move_uploaded_file (string
f i l e n a m e
f
i
l
e
n
a
m
e
, string
d e s t i n a t i o n
d
e
s
t
i
n
a
t
i
o
n
): 将上传的文件移动到新位置 file (filename[,flags,context]): 把整个文件读入一个数组中(按行分割) file_get_contents (string filename/url[,bool use_include_path=false[,resource context[,int offset=-1[,int maxlen]]]]): 将整个文件/url读入一个字符串 file_put_contents (filename,data[,flags,context]): 将一个字符串写入文件 readfile (filename): 读取文件并写入到输出缓冲 dirname (path): 返回路径中的目录部分 basename (path[,suffix]): 返回路径中的文件名部分,如果文件名是以 suffix 结束的,那这一部分也会被去掉 mkdir (pathname[,mode = 0777): 尝试新建一个由 pathname 指定的目录 scandir (dir[,order,context]): 返回包含指定路径中的文件和目录的数组 dir (dir[,context]): 以面向对象的方式访问目录,打开 dir 参数指定的目录,返回一个 Directory 类实例 #$_FILES
$_FILES[‘file’][‘name’]: 被上传文件的名称 $_FILES[‘file’][‘type’]: 被上传文件的类型 $_FILES[‘file’][‘size’]: 被上传文件的大小(字节) $_FILES[‘file’][‘tmp_name’]: 存储在服务器的文件的临时副本的名称 $_FILES[‘file’][‘error’]: 由文件上传导致的错误代码
0:没有错误发生,文件上传成功 1:上传的文件超过了 php.ini中upload_max_filesize(默认情况为2M) 选项限制的值 2:上传文件的大小超过了 HTML表单中MAX_FILE_SIZE选项指定的值 3:文件只有部分被上传 4:没有文件被上传 5:上传文件大小为0 #string
strval (var): 获取变量 var 的字符串值 trim (string): 数移除字符串两边多余的空白 nl2br (string): 用XHTML中的 br 标记代替字符串中的换行符 strip_tags (string[,allow]): 从字符串中去除 HTML 和 PHP 标记 htmlspecialchars (string): 把预定义的字符转换为 HTML 实体 addslashes (string): 返回在预定义字符之前添加反斜杠的字符串 explode (separator,string): 把字符串以separator分割为数组 implode (separator,array): 把一维数组各元素间用separator连接为字符串 strlen (string): 返回字符串的长度 mb_strlen (string[,encoding): 返回具有 encoding 编码的字符串 string 包含的字符数 mb_substr (string,start[,length,encoding]): 根据 start 和 length 参数返回 string 中指定的部分 str_replace (find,replace,string,count): 把字符串 string 中的字符 find 替换为 replace strstr (string,needle): 查找 needle 在 string 中的首次出现,并返回字符串的剩余部分 iconv (string
i n c h a r s e t
i
n
c
h
a
r
s
e
t
, string
o u t c h a r s e t
o
u
t
c
h
a
r
s
e
t
, string
s t r
s
t
r
): 将字符串 str 从 in_charset 转换编码到 out_charset utf8_encode (str): 把 ISO-8859-1 字符串编码为 UTF-8 sprintf (format,arg1,arg2,arg++): 返回一个字符串生成格式化字符串format,把百分号(%)符号替换成一个作为参数进行传递的变量 #时间
microtime (): 返回当前 Unix 时间戳的微秒数 time (): 返回自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数 uniqid ([prefix,more_entropy]): 基于以微秒计的当前时间,生成一个唯一的 ID,如:sha1(uniqid(rand(),true)); strtotime (stringtime[,now]): 将任何字符串的日期时间描述解析为 Unix 时间戳 #math
round (x[,prec]): 返回将 x 根据指定精度 prec (十进制小数点后数字的数目)进行四舍五入的结果。prec 也可以是负数或零(默认值) mt_rand (min,max): 返回从 min 到 max 之间的伪随机数 dechex (dec_number): 返回转换为十六进制数的十进制数 intval (var[,base = 10]): 获取变量的整数值 #array
is_array (var): 如果 var 是数组则返回 TRUE range (low,high[,step]): 返回一个包含从 low 到 high 之间的元素的数组 in_array (needle,haystack): 检查数组 haystack 中是否存在某个值 needle array_search (needle,haystack): 在数组 haystack 中搜索给定的值 needle,如果成功则返回首个相应的键名 array_merge (array1[,array…]): 返回将后一个数组的值与前一个合并后的最终数组 key (array): 返回数组中当前单元的键名 array_keys (array[,search_value,strict]): 返回数组中部分的或所有的键名 array_values (array): 返回数组中所有的值并给其建立数字索引。 array_filter (array[,callback,flag]): 用回调函数过滤数组中的单元(依次将 array 数组中的每个值传递到 callback 函数。如果 callback 函数返回 true,则 array 数组的当前值会被包含在返回的结果数组中。数组的键名保留不变) array_map (callback,array1[,array…]): 为数组的每个元素应用回调函数(返回为 array 每个元素应用 callback 函数之后的数组,callback 函数形参的数量和传给 array_map() 数组数量必须一样) extract (array[,flags,prefix]): 从数组中将变量导入到当前的符号表(解包数组) get_object_vars (obj): 返回由 obj 指定的对象中定义的属性组成的关联数组 get_defined_vars (): 返回一个包含所有已定义变量列表的多维数组 get_declared_classes (): 返回由当前脚本中已定义类的名字组成的数组 array_slice (array,offset[,length]): 返回根据 offset 和 length 参数所指定的 array 数组中的一段序列 count (array[,mode]): 统计数组中的元素数量 array_key_exists (key,array): 检测键名是否在数组array中存在 array_unqiue (array[,sort_flags]): 移除数组中重复的值 list (varname[,varname…]): 把数组中的值赋给一些变量 current (array): 返回数组中的当前单元(每个数组中都有一个内部的指针指向它“当前的”单元,初始指向插入到数组中的第一个单元) next (array): 将数组中的内部指针向前移动一位并返回值 prev (array): 将数组的内部指针倒回一位并返回值 reset (array): 将数组的内部指针指向第一个单元并返回值 end (array): 将数组的内部指针指向最后一个单元并返回值 each (array): 返回数组中当前的键/值对并将数组指针向前移动一步,each() 经常和 list() 结合使用来遍历数组,如:
<?php
$fruit = array ('a' => 'apple' , 'b' => 'banana' , 'c' => 'cranberry' );
reset($fruit );
while (list ($key , $val ) = each($fruit )) {
echo "$key => $val\n" ;
}
?>
运行结果:
a => apple
b => banana
c => cranberry
#会话
session_start ([options = []]): 启动新会话或者重用现有会话 session_destroy (): 销毁一个会话中的全部数据 setcookie (name,value[,expire]): 向客户端发送一个 HTTP cookie #图像
imagecreatetruecolor (width,height): 返回一个图像标识符,代表了一幅大小为 width 和 height 的黑色图像 imagecolorallocate (image,red,green,blue): 返回一个标识符,代表了由给定的 RGB 成分组成的颜色。red,green 和 blue 分别是所需要的颜色的红,绿,蓝成分。这些参数是 0 到 255 的整数或者十六进制的 0x00 到 0xFF。 imagecolorallocate() 必须被调用以创建每一种用在 image 所代表的图像中的颜色 imagefill (image,x,y,color): 在 image图像的坐标 x,y(图像左上角为 0, 0)处用 color颜色执行区域填充(即与 x, y 点颜色相同且相邻的点都会被填充) imageline (image,x1,y1,x2,y2,color): 用 color颜色在图像 image 中从坐标 x1,y1 到 x2,y2(图像左上角为 0, 0)画一条线段 imagestring (image,fontsize,x,y,string,color): 用 color 颜色将字符串 string 画到 image所代表的图像的 x,y坐标处,如果 font 是 1,2,3,4 或 5,则使用内置字体 imagepng/gif/bmp/jpeg (image): 以 png/gif/bmp/jpeg 格式将图像输出到浏览器或文件 imagedestroy (image): 释放与 image 关联的内存 getimagesize (filename): 返回包含图像大小的数组 imagecreatefrompng/gif/bmp/jpeg (filename): 返回一图像标识符,代表了从给定的文件名取得的图像 imagecopyresampled (image1,image2,x1,y1,x2,y2,width1,height1,width2,height2): 将一幅图像中的一块正方形区域拷贝到另一个图像中 #正则
preg_match (pattern,subject): 执行匹配正则表达式,返回 pattern 的匹配次数。 它的值将是0次(不匹配)或1次 preg_match_all (pattern,subject,matches): 搜索 subject 中所有匹配 pattern 给定正则表达式的匹配结果并且将它们输出到 matches中 preg_replace (pattern,replacement,subject): 搜索 subject 中匹配 pattern 的部分, 以 replacement 进行替换 preg_replace_callback (pattern,callback,subject[,limit,count]): 执行一个正则表达式搜索并且使用一个回调进行替换 #Output Control
ob_start ([callback,chunk_size,erase]): 打开输出缓冲,当输出缓冲激活后,脚本将不会输出内容(除http标头外),相反需要输出的内容被存储在内部缓冲区中 ob_clean (): 丢弃输出缓冲区中的内容 ob_get_contents (): 返回输出缓冲区的内容 #SQL
mysql_insert_id (connection): 返回上一步 INSERT 操作产生的 ID #其他
is_numeric (var): 如果 var 是数字和数字字符串则返回 TRUE is_callable (name): 验证变量的内容能否作为函数调用 is_subclass_of (obj,class_name): 如果对象 obj 所属类是类 class_name 的子类,则返回 TRUE class_exists (class_name,[autoload=true]): 检查类是否已定义 function_exists (function_name): 如果给定的函数已经被定义就返回 TRUE method_exists (object ,method_name ): 如果 method_name 所指的方法在 object 所指的对象类中已定义,则返回 TRUE get_defined_functions ([exclude_disabled]): 返回所有已定义函数的数组 func_get_args (): 返回一个包含函数参数列表的数组 func_num_args (): 返回参数列表的数量 call_user_func_array (callback,param_arr): 把第一个参数作为回调函数(callback)调用,把参数数组作(param_arr)为回调函数的的参数传入,如: call_user_func_array([$this->delegator, $name], $args);
defined (name): 函数检查某常量是否存在 unset (var[,var…]): 释放给定的变量 md5 (string): 计算字符串的 MD5 散列值 sha1 (string): 计算字符串的 SHA1 散列值 serialize (value): 序列化对象,产生一个可存储的值的表示 unserialize (string): 反序列化对象,从已存储的表示中创建 PHP 的值 Closure::bind (closure,newthis[,newcope]): 复制一个闭包,绑定指定的$this对象和类作用域