PHP 常用内置函数

PHP常用函数归类总结【大全】

http://blog.csdn.net/ty_hf/article/details/49641921

PHP常用函数总结(180多个)

http://www.jb51.net/article/101179.htm

非常实用的PHP常用函数汇总

http://www.jb51.net/article/58610.htm

重点分类

运算符

     算数运算符:+ - * / % ++ --
     连接运算符: .
     赋值运算符: =, +=,-=,*=,/=,%=,.=
     比较运算符:>,<,==,===,!= <>,!==
     逻辑运算符: and,&&  ;   or,||   ;   not,!  ;  xor(逻辑异或,两边不同返回TRUE,相同返回FALSE)
     位运算符    : & ;|;^(异或,不同返回1);~(非运算符,1.0取反);<<左移,右边空出的补0;>>右移左边空出的补0

流程控制

if(){}else{}

while(){};

do{}while();$

for($a=1;$a<10;$a++){}
    switch($a){
    case 1:echo 1; break;
    case 2:echo 2;break;
    default: echo "this is defaut value";
    }

continue,break;exit   区别:
continue跳过当前循环,循环还在继续
break 跳出当前循环,循环终止
exit;   终止当前脚本,这行代码后边的代码不执行了

变量,常量

严格区分大小写,但内置结构或关键字无所谓(echo)
命名:不能以数字,空格,.来开头,但是可以有汉字,eg:$变量="aa";
可变变量:$a='aa';$$a="bb";则 $aa="bb";
引用赋值:$a="aa"; $b=&$a; 则改变$a的值,$b也变化。不同:存储结构是分开的,即使unset($a),$b还在(区分C语言)
变量类型:int str array bool object float resource null
全局变量:全局变量本身就是静态存储方式,所有的全局变量都是静态变量
$_SESSION,  $_COOKIE,  $_POST,  $_GET,  $_REQUEST, $_FILES,$_EVN
静态变量:
static  [详细见下图] 
静态方法:静态方法不需要所在类被实例化就可以直接使用。Math::Max($a,$b);(未实例化Math类直接调用静态方法Max)
常量:
define("NAME",$value,[TRUE]);//如果第三个参数为true,则不区分大小写,默认是区分大小写的
预定义常量:
PHP_OS="WINDOWS";  PHP_VERSION="版本"; 
E_ERROR=1,错误,导致脚本终止;  E_WARNING=2,警告,脚本不终止 ;E_NOTICE=8,非关键性错误
魔术常量:【全是返回物理路径,即使被包含输出,输出的也是源头代码的信息,非当前包含文件的信息,和$_SERVER区分】
__FILE__    当前文件名称
__CLASS__    当前类名称
__FUNCTION__      当前函数名称
__METHOD__        当前方法名称
__LINE__                当前行数名称

输出函数

echo()【语言结构】
print()//【语言结构】
var_dump() //【有返回值】,若传输失败导致没有输出,它返回false
var_export()【有返回值,翻译一个合法的PHP代码】
printf()//类似与C语言的形式 printf("my name is %s, age %d", $name, $age);,打印出来
sprintf()//跟printf相似,但不打印,而是返回格式化后的文字,其他的与printf一样

数组

array(): 生成一个数组
range(): 创建并返回一个包含指定范围的元素的数组
compact(): 创建一个由参数所带变量组成的数组
count(): 计算数组中的单元数目或对象中的属性个数
array_chunk(): 把一个数组分割为新的数组块
array_merge(): 把两个或多个数组合并为一个数组
array_slice(): 在数组中根据条件取出一段值,并返回
array_diff(): 返回两个数组的差集数组
array_search(): 在数组中查找一个值,返回一个键,没有返回返回假
array_sum(): 返回数组中所有值的总和
array_shift(): 删除数组中的第一个元素,并返回被删除元素的值
array_unshift(): 在数组开头插入一个或多个元素
array_push(): 向数组最后压入一个或多个元素
array_pop(): 取得(删除)数组中的最后一个元素
array_unique(): 删除重复值,返回剩余数组
array_intersect(): 返回两个或多个数组的交集数组
array_values(): 返回数组中所有值,组成一个数组
array_rand(): 从数组中随机抽取一个或多个元素,注意是键名!!!
array_reverse(): 返回一个元素顺序相反的数组 元素顺序相反的一个数组,键名和键值依然匹配
array_count_values(): 统计数组中所有的值出现的次数
array_flip(): 返回一个键值反转后的数组
in_array(): 在数组中搜索给定的值,区分大小写
array_key_exists(): 判断某个数组中是否存在指定的 key
key(): 返回数组内部指针当前指向元素的键名    
current(): 返回数组中的当前元素(单元).    
next(): 把指向当前元素的指针移动到下一个元素的位置,并返回当前元素的值    
prev(): 把指向当前元素的指针移动到上一个元素的位置,并返回当前元素的值    
end(): 将数组内部指针指向最后一个元素,并返回该元素的值(如果成功)    
reset(): 把数组的内部指针指向第一个元素,并返回这个元素的值    
list(): 用数组中的元素为一组变量赋值
sort(): 按升序对给定数组的值排序,不保留键名
asort():按升序对给定数组的值排序,保留键名
shuffle(): 将数组打乱,保留键名
each(): 返回数组中当前的键/值对并将数组指针向前移动一步

字符串函数

返回bool
isset($a)//当$a=NULL 或不存在,返回false,反之为true
empty($a)//当$a=NULL/''/array()/0/'0'/不存在 时 返回true,反之为false

.nl2br(): \n转义为<br>标签
strip_tags(): 剥去 HTML、XML 以及 PHP 的标签 echo strip_tags("Hello <b>world!</b>"); 
explode(): 使用一个字符串为标志分割另一个字符串
implode(): 同join,将数组值用预订字符连接成字符串
substr(): 截取字符串
str_replace(): 字符串替换操作,区分大小写
str_word_count(): 统计字符串含有的单词数
substr_count(): 统计一个字符串,在另一个字符串中出现次数
substr_replace(): 替换字符串中某串为另一个字符串
strtr(): 转换字符串中的某些字符
strstr(): 返回一个字符串在另一个字符串中开始位置到结束的字符串
stristr(): 返回一个字符串在另一个字符串中开始位置到结束的字符串,不区分大小写
strchr(): strstr()的别名,返回一个字符串在另一个字符串中首次出现的位置开始到末尾的字符串
strrchr(): 返回一个字符串在另一个字符串中最后一次出现位置开始到末尾的字符串
strpos(): 寻找字符串中某字符最先出现的位置
strrpos(): 寻找某字符串中某字符最后出现的位置
strripos(): 寻找某字符串中某字符最后出现的位置,不区分大小写
strcspn(): 返回字符串中不符合mask的字符串的长度
strlen(): 统计字符串长度int strlen(str $str)
str_repeat(): 重复使用指定字符串
strspn(): 返回字符串中首次符合mask的子字符串长度
str_split(): 把字符串分割到数组中
str_pad(): 把字符串填充为指定的长度
wordwrap(): 按照指定长度对字符串进行折行处理
strrev(): 反转字符串
str_shuffle(): 随机地打乱字符串中所有字符
strtolower(): 字符串转为小写
strtoupper(): 字符串转为大写
str_word_count(): 统计字符串含有的单词数
similar_text(): 返回两字符串相同字符的数量
parse_str(): 将字符串解析成变量
ucfirst(): 字符串首字母大写
ucwords(): 字符串每个单词首字符转为大写
md5(): 字符串md5编码
ucwords(): 字符串每个单词首字符转为大写
count_chars(): 统计字符串中所有字母出现次数
md5(): 字符串md5编码
trim(): 删除字符串两端的空格或其他预定义字符
rtrim(): 删除字符串右边的空格或其他预定义字符
chop(): rtrim()的别名
addcslashes():在指定的字符前添加反斜线转义字符串中字符
stripcslashes(): 删除由addcslashes()添加的反斜线
addslashes(): 指定预定义字符前添加反斜线
stripslashes(): 删除由addslashes()添加的转义字符
quotemeta(): 在字符串中某些预定义的字符前添加反斜线
chr(): 从指定的 ASCII 值返回字符
ord(): 返回字符串第一个字符的ASCII值
strcasecmp(): 不区分大小写比较两字符串
strcmp(): 区分大小写比较两字符串
strncmp(): 比较字符串前n个字符,区分大小写
strncasecmp(): 比较字符串前n个字符,不区分大小写
strnatcmp(): 自然顺序法比较字符串长度,区分大小写
strnatcasecmp(): 自然顺序法比较字符串长度, 不区分大小写
chunk_split():将字符串分成小块
strtok(): 切开字符串
ltrim(): 删除字符串左边的空格或其他预定义字符
dirname(): 返回路径中的目录部分
number_format(): 通过千位分组来格式化数字 输入: 要格式化的数字|规定多少个小数|规定用作小数点的字符 串|规定用作千位分隔符的字符串
htmlentities(): 把字符转为HTML实体
htmlspecialchars(): 预定义字符转html编码

文件处理函数

fopen(): 打开文件或者 URL
fclose(): 关闭一个已打开的文件指针
filesize(): 取得文件大小
is_readable(): 判断给定文件是否可读
is_writable(): 判断给定文件是否可写
is_executable(): 判断给定文件是否可执行
filectime(): 获取文件的创建时间
filemtime(): 获取文件的修改时间
fwrite(): 写入文件
fread(): 读取文件
file(): 把整个文件读入一个数组中
readdir(): 从目录句柄中读取条目
closedir(): 关闭目录句柄
rmdir(): 删除目录
unlink(): 删除文件
copy(): 拷贝文件
rename(): 重命名一个文件或目录
file_exists($file)//文件是否存在,【true/false】
is_executable($file)//是否可执行【返回bool】
filectime($file)//文件创建时间【时间戳】
filemtime($file)//文件修改时间【时间戳】
fileatime($file)//文件访问时间【时间戳】
stat($file)//返回文件的大部分信息【文件信息数组】

文件的上传与下载
s_uploaded_file():判断文件是否是通过 HTTP POST上传的
move_uploaded_file(): 将上传的文件移动到新位置

遍历目录

opendir($file)//打开一个目录,参数为目录名或目录路径【返回资源型的目录句柄$dir_handle,无权限返false】
readdir($dir_handle);//读取目录,参数为目录句柄,while,返回当前指向对象的名字,目录指针后移【返回filename,没有是返false】
closedir($dir_handle)//关闭打开的目录
rewinddir($dir_handle) //倒回目录句柄,将目录指针重置到目录开始  

数学函数

ceil()//向上取整
floor()//向下取整
round();//四舍五入
abs();//取绝对值
rand(10,100)//随机取值
mt_rand(10,100)//随机取值,算法不同,速度更快
fmod()//返回除法浮点形余数
max(int/$arr)//取最大值
min(int/$arr)//取最小值
pow(1024,2)//返回1021的2次幂
sqrt(): 求平方根
mt_rand(): 更好的随机数
rand(): 随机数 输入: 最小|最大, 输出: 随机数随机返回范围内的值
pi(): 获取圆周率值

时间函数

date_default_timezone_set()('PRC');//设置时区为中国
   date.timezone ="PRC";//PHP.INI
time();//默认获取当前时间,【返回时间戳格式】
micritime();//获取当前时间【返回毫秒的时间戳】
mktime(H,i,s,m,d,Y)//指定时间转为时间戳,参数为空的时候作用与time()相同【返回时间戳格式】
strtotime('2015-10-10 10:10:10');//指定时间转换为时间戳【返回时间戳】
date("Y-m-d H:i:s",time());//转换时间戳为日期格式【返回目标格式的字符串】
getdate()//获取当前时间,【返回一个数组,参数年,月,日等都有】

URL处理函数

urlencode($url)//对该URL进行编码;原因:防止乱码,解决空格的呢个字符不能传递问题,form也是此编码格式传递
urldecode($url)//对该URL进行解码
parse_url($url)//返回该URL的所有信息,[scheme协议][host域名] [path路径][query参数]  【返回含信息的数组】
pathinfo($url)//["dirname"目录名] ["basename"文件名] ["extension"文件后缀]【返回含信息的数组,下标不同】
get_meta_tags($url)//获取该页面的所有META标签【返回关联数组】

JSON

json_encode($data);//对变量进行JSON编码
json_decode($data)//对JSON格式的字符串进行解码
json_last_error();//返回最后一次反生的错误

 2,658 total views,  8 views today

Revisions

Comments are closed.