PHP常用函数(一)

数学函数

  • abs(): 求绝对值

  • ceil():进一法取整

  • floor():舍去法取整

  • fmod():浮点数取余

    <?php
     $a = 5.6;
     $b = 2.1;
     $r = fmod($a, $b);
     echo $r; //1.4 因为 2.1*2+1.4=5.6
    ?>
    
  • pow():返回数的n次方

    <?php
     echo pow(2,4);  // 16
    ?>
    
  • round():浮点数四舍五入

    <?php
      echo round(1.323232, 3);  //1.323
    ?>
    
  • sqrt():求平方根

  • max():求最大值

  • min():求最小值

  • mt_rand():更好的随机数

  • rand():随机数

  • pi():获取圆周率值

  • trim():去除两边的空格
    rtrim():去除右边的空格
    chop():rtrim的别名
    ltrim():去除左边的空格

  • dirname():返回路径中的目录部分

  • str_pad():把字符串填充为指定的长度

    $str = "Hello World";
    echo str_pad($str,20,"."); //Hello World.........
    

    输入:要填充的字符串|新字符串的长度|供填充使用的字符串,默认是空白
    输出:完成后的字符串

  • str_repeat():重复使用指定的字符串

    echo str_repeat(".",13);//.............
    
  • str_split():把字符串分割到数组中

    print_r(str_split("Hello"));
    /* Array
        (
        [0] => H
        [1] => e
        [2] => l
        [3] => l
        [4] => o
    )*/
    

    输入:要分割的字符串|每个数组元素的长度,默认1
    输出:拆分后的字符串数组

  • strrev():反转字符串

    echo strrev("Hello World!"); // !dlroW olleH
    

    输出:目标字符串颠倒顺序后的字符串

  • wordwrap():按照指定长度对字符串进行折行处理

    $str = "An example on a long word is:
    Supercalifragulistic";
    echo wordwrap($str,15);
    /*An example on a
    long word is:
    Supercalifragulistic*/
    

    输入:目标字符串|最大宽数
    输出:折行后的新字符串

  • str_shuffle():随机的打乱字符串中所有字符

    echo str_shuffle("Hello World");//Wel ololHdr
    

    输入:目标字符串顺序
    输出:打乱后的字符串

  • parse_str():将字符串解析成变量

    parse_str("id=23&name=John%20Adams", $myArray);
    print_r($myArray);
    /*Array
    (
      [id] => 23
      [name] => John Adams
    )*/
    

    输入:要解析的字符串|存储变量的数组名称
    输出:返回数组

  • number_format():通过千位分组来格式化数字
    输入:要格式化的数字|规定多少个小数|规定用作小数点的字符串|规定用作千位分隔符的字符串

大小与转换

  • strtolower():字符串转成小写
  • strtoupper():字符串转成大写
  • ucfirst():字符串首字母大写
  • unwords():字符串每个单词首字符转成大写

html标签关联

  • htmlentities():把字符转为html实体

    $str = "John & 'Adams'";
    echo htmlentities($str, ENT_COMPAT); // John & 'Adams'
    
  • htmlspecialchars():预定义字符转成html编码

  • nl2br():\n转成 < br >标签

  • strip_tags():剥去html,xml 以及PHP标签

    echo strip_tags("Hello <b>world!</b>"); //Hello world!
    
  • addcslashes:在指定的字符前添加反斜杠转义字符串中的字符

    $str = "Hello, my name is John Adams.";
    echo $str."\n";//Hello, my name is John Adams.
    echo addcslashes($str,'m');//Hello, \my na\me is John Ada\ms.
    

    输入:目标字符串|指定的指定字符或者字符范围

  • stripcslashes():删除由addcslashes添加的反斜线

  • addslashes():指定预定义字符前添加反斜线

    $str = "Who's John Adams?";
    echo addslashes($str);//Who\'s John Adams?
    

    输出:把目标串中的'"\和null进行转义处理

  • stripslashes():删除由addslashes()添加的转义字符

  • quotemeta():在字符串中某些预定义字符前面添加反斜线

  • chr():从指定的ASCII值返回字符

  • ord():返回字符串第一个字符的ASCII值

字符串比较

  • stricasecmp():不区分大小写的比较两个字符串
    输入:两个目标字符串
    输出:大1|等0|小-1
  • strcmp():区分大小写的比较两个字符串
  • strncmp():比较字符串的前n个字符,不区分大小写
  • strnatcmp():自然顺序法比较字符串长度,区分大小写
  • strnatcasecmp():自然顺序法比较字符串长度,不区分大小写

字符串切割与拼接

  • chunk_split():将字符串分成小块
    调用:str chunk_split(str body[,intlen[,str end]]) 输入:body目标字符串,len长度,str插入结束符
    输出:分割后的字符串
  • strtok():切开字符串
    调用:str strtok(str str, strtoken)
    目标字符串str,以token为标志切割返回切割后的字符串
  • explode():使用一个字符串为标志分割另一个字符串
    调用:array explode(str sep,strstr[, int limit]) 输入:sep为分隔符,str目标字符串,limit返回数组最多包含元素数
    输出:字符串被分割后形成的数组
  • implode():同join,将数组的值用预定字符链接成字符串
  • substr():截取字符串
    调用:string substr(string string, intstart [, int $length])

字符串查找替换

  • str_replace():字符串替换操作,区分大小写
    调用mix str_replace(mix search,mixsubject[, int num]); 输入:search查找的字符串,replace替换的字符串,subject被查找字符串,&$num
    输出:返回替换后的结果

  • str_irplace():字符串替换操作,不区分大小写
    调用:mix str_ireplace(mix search,mixreplace, mix subject[, int &count])
    输入:search 查找的字符串,replace替换的字符串, subject被查找的字符串,&num
    输出:返回替换后的结果

  • substr_count():统计一个字符串在另外一个字符串中出现的次数

  • substr_replace():替换字符串中某串为另一个字符串

    echo substr_replace('Hello world!', '1111', 3);//Hel1111
    

    调用:mixed substr_replace(mixed string, stringreplacement,int start[,intlength])

  • similar_text():返回两个字符串相同字符的数量

    echo similar_text('textssss', 'test');//3
    

    调用:int similar_text(str str1, strstr2);
    输入:两个比较的字符串
    输出:整型,相同字符数量

  • strrchr():返回一个字符串在另外一个字符串中最后一次出现位置开始到末尾的字符串
    调用:string strstr(string haystack, mixedneedle)

  • stristr():返回一个字符串在另一个字符串中开始位置到结束的字符串,不区分大小写。
    调用:string stristr(string haystack, mixedneedle[, bool $before_needle = false])

  • strtr():转换字符串中的某些字符

    echo strtr('hello world', 'hello', 'no');//nollo world
    

    调用:string strtr(string str, stringfrom, string $to)

  • strpos():寻找字符串中某个字符最先出现的位置

    echo strpos('hello world', 'o');//4
    

    调用:int strpos(string haystack, mixedneedle[, int $offset = 0])

  • stripos():寻找字符串某字符最先出现的位置,不区分大小写

    echo stripos('hello world', 'O');//4
    

    调用:int stripos(string haystack,stringneedle[,int $offset])

  • strrpos():寻找某字符串中某字符最后出现的位置

    echo strrpos('hello world', 'o');//7
    

    调用:int strrpos(string haystack, stringneedle[,int $offset])

  • strripos():寻找某字符串中某字符最后出现的位置,不区分大小写

    echo strripos("hello world", "O");//7
    调用:int strripos(string haystack, stringneedle[, int $offset])

  • strspn():返回字符串中首次符合mask的子字符串长度
    调用:int strspn(string str1, stringstr2[,int start[,intlength]])

  • strcspn():返回字符串中不符合mask的字符串的长度
    调用:int strcspn(string str1, stringstr2[,int start[, intlength]])
    输入:str1被查询,str2查询字符串,start开始查询的字符,length是查询长度
    输出:返回从开始到第几个字符串

字符串统计

  • str_word_count():统计字符串含有的单词数

    echo str_word_count('hello world, do you like me');//6
    

    调用: mix str_word_count(str $str,[])
    输入:目标字符串
    输出:统计出的数量

  • strlen():统计字符串长度int
    输入:目标字符串
    输出:整型长度

  • count_chars():统计字符串中所有字母出现次数(0.255)
    调用: mixed count_chars ( string string [, intmode ] )

字符串编码

  • md5():字符串md5加密

    $str = 'hello world';
    echo md5($str);//5eb63bbbe01eeed093cb22bb8f5acdc3
    
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,793评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,567评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,342评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,825评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,814评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,680评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,033评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,687评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,175评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,668评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,775评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,419评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,020评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,206评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,092评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,510评论 2 343

推荐阅读更多精彩内容