php常用函数
字符串函数
(1)trim() 移除字符串两侧的空白字符和其他字符; (2)strlen() 获取字符串的长度 (3)mb_strlen() 获取字符串长度(可指定字符编码,对中文字符串计算长度) (4)substr()返回字符串的一部分; substr ( string $string , int $start [, int $length ] ) (5)str_replace() 函数替换字符串中的一些字符(区分大小写) str_replace($search,$replace, $subject,[$count]) count可选,对替换数进行计数 (6)substr_replace() 函数把字符串的一部分替换为另一个字符串 substr_replace(string,replacement,start,[length]) start 开始替换处 length 替换多少个字符 (7)substr_count(): 统计一个字符串,在另一个字符串中出现次数 substr_count(string,sub_string,start[可选],length[可选]) (8)str_repeat () 把字符串重复指定的次数 str_repeat(string,repeat) (9)is_string() 检测变量是否是字符串; (10)str_shuffle () 随机地打乱字符串中所有字符 (11)sprintf() 返回根据格式化字符串生成的字符串(通常用于获取分表后的数据表名) (12)strstr() 查找字符串的首次出现,并返回字符串中剩余的部分。 stristr(string,search,before_search) before_search默认值为 "false" 的布尔值 (13)strchr(): strstr()的别名 (14)strrchr() 函数查找字符串在另一个字符串中最后一次出现的位置,并返回从该位置到字符串结尾的所有字符 (15)strpos() 函数查找字符串在另一字符串中第一次出现的位置(区分大小写) 注释: 字符串位置从 0 开始,不是从 1 开始。 strpos(string,find,start) start可选。规定开始搜索的位置。 (16)strrpos() - 查找字符串在另一字符串中最后一次出现的位置(区分大小写) (17)addslashes 返回在预定义字符之前添加反斜杠的字符串 预定义字符是:单引号 双引号 反斜杠 NULL (18)str_split(): 把字符串分割到数组中 (19)strrev(): 反转字符串 (20)parse_str(): 将字符串解析成变量 http_build_query()使用给出的关联(或下标)数组生成一个经过 URL-encode 的请求字符串。 parse_str("id=23&name=John%20Adams", $myArray); (21)number_format(): 通过千位分组来格式化数字 输入 (22)strtolower(): 字符串转为小写 (23)strtoupper(): 字符串转为大写 (24)htmlentities(): 把字符转为HTML实体 (25)html_entity_decode($str)把HTML实体转换成预定义字符 (26)htmlspecialchars(): 预定义的字符转换为 HTML 实体。 (27)htmlspecialchars_decode($str);//把HTML实体转换成预定义字符 (28)strip_tags(): 剥去 HTML、XML 以及 PHP 的标签 (29)chr(): 从指定的 ASCII 值返回字符 echo chr(052); // ASCII 值返回对应的字符 (30)ord(): 返回字符串第一个字符的ASCII值 echo ord("hello"); 字符串第一个字符的 ASCII 值 (31)strcmp(): 区分大小写比较两字符串 (32)strcasecmp(): 不区分大小写比较两字符串 (33)iconv实现编码转换 (34)is_numeric() — 检测变量是否为数字或数字字符串 (35)gettype($var);返回变量的类型
htmlentities转换所有的html标记
htmlspecialchars只格式化& 、’、 “、 <、> 这几个特殊符号。
使用htmlentities不指定编码的话遇到中文会乱码
一、isset()和empty()函数有什么区别?
isset() 的定义 ==检测变量是否已设置并且非 NULL== empty() 的定义 ==检查一个变量是否为空== 以下的东西被认为是空的: "" (空字符串) 0 (作为整数的0) 0.0 (作为浮点数的0) "0" (作为字符串的0) NULL FALSE array() (一个空数组) $var; (一个声明了,但是没有值的变量) 例子: $a = "test"; var_dump(isset($a)); // TRUE unset ($a); var_dump(isset($a)); // FALSE $var = ''; var_dump(isset($var)); // TRUE isset() 和 empty()的比较 $var = 0; if (empty($var)) { echo 1; }//1 if (isset($var)) { echo 2; }//1 0、''、null之间相等关系 if('' == null && '' == 0 && 0 =='0') echo true; //返回结果 1; if(null == '0' ) echo true; //返回结果 untitled; 结论:' ' ,null , 0 ,'0'互相相等;'',null不等于'0'
数组函数
一、数组操作的基本函数
二、数组的分段和填充
四、数组与栈,列队
五、数组的排序
六、数组的计算
七、回调函数
八、array_merge_recursive()与array_merge()区别
九、array_walk 和 array_map的区别
时间函数
date()
中参数
文件系统函数
(1) fopen() 打开文件或者 URL (2) fgets() ; 从文件指针中读取一行 注:file_get_contents()也是读取文件 (3) fgetc(): 从文件指针中读取字符 (4) file(): 把整个文件读入一个数组中 (5) file_get_contents(): 将整个文件读入一个字符串 (6) file_put_contents(file,string):将一个字符串写入文件 (7) fwrite(file,string) ; 写入文件 注:file_put_contents()同样可以写入文件 (8) flock(): 轻便的执行文件锁定 LOCK_EX - 独占锁定 LOCK_UN - 释放一个共享锁定或独占锁定 (9) fclose() 关闭一个已打开的文件指针 关闭文件句柄 (10) basename(): 返回文件名 (11) dirname(): 返回文件的路径(目录部分) (12) pathinfo(): 返回文件路径的信息 ["dirname"目录名] ["basename"文件名] ["extension"文件后缀] (13) rename(oldname , newname) 移动 / 重命名文件 (14) copy() 复制文件 (15) vim 或 touch 创建文件 (16) unlink() 删除文件 (17) fileatime() 获取文件上次访问的时间 (18) filemtime() 获取文件上次修改的时间 (19) filectime(): 获取文件的创建时间 (20) filesize() 获取文件大小 (21) filetype() 获取文件类型 (22) state() 获取文件详细信息 (23) is_dir() 判断是否是目录 (24) feof(): 检测文件指针是否到了文件结束的位置 (25) file_exists():检查文件或目录是否存在 (26) is_uploaded_file():判断文件是否是通过 HTTP POST上传的 (27) move_uploaded_file(): 将上传的文件移动到新位置 (28) is_readable(): 判断给定文件是否可读 (29) is_writable(): 判断给定文件是否可写 (30) is_executable(): 判断给定文件是否可执行 (31) fread(file,length) 函数读取文件 (32) readfile() 函数读取一个文件,并写入到输出缓冲
文件下载
(31)header('content-disposition:attachment;filename='.basename($filename));//表示附件方式下载 (32)header('content-length:'.filesize($filename)); (33)readfile($filename);
文件夹函数
(1)opendir() 打开目录 (2)readdir() 读取目录 (3)rmdir() 删除目录 (4)closedir() 关闭目录句柄 (5)mkdir() 创建目录 (6)dirname() 返回路径中的目录部分 (7)getcwd() 取得当前工作目录 (8)scandir() 列出指定路径中的文件和目录
数学函数
abs(): 求绝对值 ceil(): 向上取整 floor(): 向下取整 round(): 浮点数四舍五入 pow(x,y): 返回 x 的 y 次方 sqrt(): 求一个数平方根 max(): 求最大值 min(): 求最小值 mt_rand() or mt_rand(min,max): 更好的随机数,随机返回范围内的值
常量:
URL处理函数
JSON
其他
-
<?php // 当前页面的URL地址 http://example.com/foo/bar.php 的脚本中使用 $_SERVER['PHP_SELF'] 将得到 /foo/bar.php。 echo $_SERVER['PHP_SELF']."<br />"; //链接到当前页面的前一页面的 URL 地址: echo $_SERVER['HTTP_REFERER']."<br />"; //前执行脚本的绝对路径名:D:Inetpubwwwrootphp est.php echo $_SERVER["SCRIPT_FILENAME"]."<br />"; //正在浏览当前页面用户的 IP 地址:127.0.0.1 echo $_SERVER["REMOTE_ADDR"]."<br />"; //查询(query)的字符串(URL 中第一个问号 ? 之后的内容):id=1&bi=2 echo $_SERVER["QUERY_STRING"]."<br />"; //当前运行脚本所在的文档根目录:d:inetpubwwwroot echo $_SERVER["DOCUMENT_ROOT"]."<br />"; $_SERVER['PHP_SELF']、$_SERVER['SCRIPT_NAME'] 与 $_SERVER['REQUEST_URI'] 之间的区别 http://locahost/php/index.php/test/foo?username=hello $_SERVER['PHP_SELF'] 得到:/php/index.php/test/foo $_SERVER['SCRIPT_NAME'] 得到:/php/index.php $_SERVER['REQUEST_URI'] 得到:/php/index.php/test/foo?username=hello ?> intval() 函数用于获取变量的整数值 sleep(10)//延迟代码执行若干秒 serialize()//返回字符串,此字符串包含了表示 value 的字节流,可以存储于任何地方。 unserialize()//对单一的已序列化的变量进行操作,将其转换回 PHP 的值。 ini_set—设置一个配置选项的值 ini_get()-获取配置选项的值 filter_var()函数使用指定的过滤器来过滤变量;它可用于验证和过滤数据。