300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > PHP常用数组函数 字符串函数 正则函数

PHP常用数组函数 字符串函数 正则函数

时间:2019-08-26 21:46:29

相关推荐

PHP常用数组函数 字符串函数 正则函数

数组函数:

1.键值操作类:【都有返回值,没有在原来参数上修改】

1.array_values($arr);//获取$arr中的值重排,去掉下标【返回值新索引数组】2.array_keys($arr[,"str",true])//获取$arr中所有字符是"str"的下标,形成索引数组,true表示区分大小写【返回新索引数组】3.array_search("is",$arr[,true]) //返回值"is"在$arr中的key,找不到返回fales,true表示严格按照类型(8,"8")【返回第一个匹配值】4.in_array("str",$arr);//判断"str"在$arr中是否存在,【返回BOOL】5.is_array($arr);//判断是否是数组【返回BOOL】6.array_key_exists($key,$arr); //查询$arr中是否有$key,【返回BOOL】7.array_flip($arr);// 交换键值,如有重复,后来居上,【返回新数组】8.array_reverse($arr,[true|false]);//数组顺序反转,param2是否保留原来键值【返回新关联/索引数组】9.array_column(array(),'name'[,name_two]) — 返回数组中指定的name列[可选参数,如果有返回name=>name_two的形式]【返回一维数组】

2.元素个数和唯一性

1.array_unique($arr);//去掉$arr中的重复值,重复的保留第一个值,【返回数组,键值保留】2.array_count_values($arr)//统计数组值出现的次数,【返回数组,KEY为原来数组的值,VALUE为统计的次数】3.count($arr[,1])/sizeof();//统计$arr的元素个数,参数"1"表示统计多维数组开启,默认0为关闭【返回统计个数】

3.拆分,合并,分解,接合数组

1.array_slice($arr,1[,2]);//在$arr中,从第二个开始取[,返回俩个值]【返回新数组(对原数组无影响),键值保留】2.array_splice($arr,1[,2,"aaa","bb"]);//删除或替换,从$arr第二个开始取,删除或替换2个值【返回值为新数组,拆掉原数组】3.array_combine($arr1,$arr2);//数组$arr1为KEY,$arr2为VALUES结合形成新索引数组【返回索引数组】4.array_merge($arr1,$arr2,$arr3...);//数组进行合并,保留键值,有重复,后来者居上【返回新数组】array_merge发现有key值相同的,取后者;$arr1+$arr2 发现有key值相同的,取前者,第二个重复的值丢弃5.array_intersect($arr1,$arr2)//返回两个数组的交集,键值不变6.array_diff($arr1,$arr2)//返回两数组的差集,返回的值为第一个数组的值,键值不变7.array_chunk($arr,2)//分割数组,把$arr按照【2个为一组】均等分割【返回一个二维数组】

4.数组的数据结构

1.array_shift($arr)//从开头,删除数组第一个元素2.array_unshift($arr,"one","two")//从开头,添加元素3.array_pop($arr)//从结尾,删除数组最后一个元素4.array_push($arr,"aaa");//从结尾,添加元素6.current($arr)//返回数组中的当前单元 比如是关联数组是不知道下标,可以输出当前数组的办法解决7.key($arr)//返回当前指针指向元素的键值8.next($arr)//当前指针下移9.pre($arr)//当前指针上移10.end($arr)//指针指到最后11.reset($arr)//指针回归到开头12.unset($arr)//销毁此数组

5.其他

1.array_rand($arr,2);//随机返回两个$arr数组当中的key【返回值为值或者数组】2.shuffle($arr)//随机的重组$arr,顺序变乱【返回新数组,保留键值】3.array_sum($arr);//返回$arr的value的和【返回一个值】4.range(0,10,2,)//快速创建0,10的数组,间隔为2,所以有5个值【返回新索引数组】5.http_build_query($arr)//把关联数组转换成一个经过urlencode加密的URLeg:array["a"=>2];=>URL:a=2&

字符串函数:

返回bool

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

返回值为自字符

1.substr(字符串,开始地方,[返回字符串的长度]);// 截取字符串的一部分,第一个字符位置为02.substr_replace($str,"aaa",start[,length]);在$str上操作,从第start个开始,把【后边】的字符[全/或length个]替换3.sub_count($str,"is"[,5,10]);//[ 从第五个字符开始,搜索长度为10,]搜索is在$str中出现的次数,【返回次数】4.strstr($email,"@"[,true]) //从头开始搜索,无true返回@后边字符,有true返回@前边的字符[strrchr对比]5.strrchr($email,"@")//从结尾开始搜索,返回@后的所有字符6.str_replace(被替换词,替换词,被搜索字符串,[统计替换次数$num]) 前两个参数也可为数组,两个数组元素个数相同7.str_repeat($str,num);//重复$str字符串 num次,

返回值为数字类的

1.strpos($str,"@");//返回@【第一次出现的位置】2.strrpos($str,"@");//返回@【最后一次出现的位置】3.str_word_count($str[,0/1/2]);//返回$str中单词的数量[0指返回次数,默认值/1指以数组形式返回单词值/2指返回关联数组,k为单词首字母下标,v单词值]4.strcmp($str1,$str2);//按ASCII码比较 str1>str2 则返回1 相等返回0 <返回-1 strcasecmp不区分大小写的比较5.strnatcmp($str1,$str2);//按自然数的排序比较,上边的比较10<2;本函数比较10>2,按自然数大小来的strcasecmp($str1,$str2);strnatcasecmp//以上4个函数,$str1,$str2比较,【返回值:相等0,小于-1,大于1】6. number_format(10000[,2]); //==》10,000.00 把第一个参数格式化,保留2位小数7. strlen($string);成功则返回字符串 $string 的长度8. mb_strlen($string,'utf8');//获取字符串$string长度,多字节的字符被计为 1。

文本处理类

1.strtoupper($str)//字母全转为大写【返回全大写字符串】2.strtolower()//字母全转为小写【返回全小写字符串】3.strtotime('-10-10 10:10:10');//指定时间转换为时间戳【返回时间戳】4.str_pad($str,length,[---,STR_PAD_BOTH]); //在$str的两边填补“---“,注意,length若小于$str长度,不填补 5.trim($str[,"a",STR_PAD_BOTH])// 去除两边/左/右的空白或"a",默认是空白,或自定义字符6.floatval("123.45aa")//=》获取变量的浮点值【123.45】7.ucfirst()//整个$str首字母大写8.ucword()//$str每个单词首字母大写

HTML类处理

1.htmlspecialchars($str)//函数把【预定义字符】转换为【 HTML 实体】,&转换成&amphtmlspecialchars_decode($str);//把【HTML实体】转换成【预定义字符】,&amp转换成&2.htmlentities($str);,函数把【预定义字符】转换为【 HTML 实体】,&转换成&amp,有乱码问题,注意第二第三个参数,若编码不正确,会在实体化时把信息丢失html_entity_decode($str)把【HTML实体】转换成【预定义字符】,&amp转换成&, &gt 转成 <3.addslashes($html);//添加转义字符“/”stripslashes($html); //删除转义字符“/”4.strip_tags($html); //去除HTML标签5.nl2br($str) //在$str中的换行/n前插入<br>,因为\n在源码可以换行,但是在浏览器窗口不行,有这个就可以6.iconv( from_charset ; to_charset,$str); //转化字符格式$file_name = iconv("gb2312","utf-8",$file_name);

正则函数[原则,能用字符串函数解决不用正则,速度问题]

字符串的匹配查找

1.preg_match($pattern,$subject,$arr);//按正则$pattern处理$subject,第一次匹配结果返回到数组中【函数的返回值为匹配次数】2.preg_match_all($pattern,$subject,$arr)//按正则$pattern处理$subject,全部匹配结果返回到数组中【函数的返回值为匹配次数】3.strstr($str,"@"[,true]);4.strpos,strrpos,substr($str,position)//联合使用

字符串的替换

1.preg_replace($pattenr,$replace,$str);//【强大的字符串处理函数】在$str中,把$parrern匹配的值替换成$replcae【返回值为处理后的字符串】2.str_replace($str,"aaa","bbb");//把$str中的aaa换成bbb

字符串的分割和链接

1.preg_split($pattern,$str);通过一个正则表达式分隔字符串【返回值为数组】 举例:$keywords = preg_split("/[\s,]+/", "hypertext language, programming");结果Array([0] => hypertext,[1] => language[2] => programming)2.explode(",",$str[,$limit_num]);//把$str按照","分割成一个数组[可选参数为返回数组的元素个数]【返回一个分割后的数组】3.impolde("+",$arr);//把$arr里的元素按照“+”链接成一个字符串

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。