好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php字符串字符处理函数详解 - php函数

php字符串字符处理函数详解

本文章来给大家整理了大量的php字符串与字符处理函数,这些算法都是高效的,包括有:数组里查找某个元素,线性表的删除,复制字符串,删除字符串,截取字符串等等操作.

以下是代码片段:

<?php      //--------------------        // 基本数据结构算法       //--------------------        //二分查找(数组里查找某个元素)        function  bin_sch( $array ,   $low ,  $high ,  $k ){             if  (  $low  <=  $high ){                 $mid  =   intval (( $low + $high )/2 );                 if  ( $array [ $mid ] ==   $k ){                     return   $mid ;                } elseif  (  $k  <  $array [ $mid ]){                     return   bin_sch( $array ,  $low ,   $mid -1,  $k );                } else {                     return   bin_sch( $array ,  $mid + 1,  $high ,  $k );                }            }             return  -1;        }        //顺序查找(数组里查找某个元素)        function   seq_sch( $array ,  $n ,   $k ){             $array [ $n ] =   $k ;             for ( $i =0;   $i < $n ;  $i ++){                 if (  $array [ $i ]== $k ){                     break ;                }            }             if  ( $i < $n ){                 return    $i ;            } else {                 return  -1;            }        }        //线性表的删除(数组中实现)        function  delete_array_element( $array  ,  $i )       {                $len  =   count ( $array );                 for  ( $j =  $i ;  $j < $len ;  $j  ++){                        $array [ $j ] =  $array  [ $j +1];               }                array_pop  ( $array );                return   $array  ;       }       //冒泡排序(数组排序)        function  bubble_sort(  $array )       {                $count  =  count (  $array );                if  ( $count  <= 0 )  return  false;                for ( $i =0 ;  $i < $count ;  $i  ++){                        for ( $j = $count -1 ;  $j > $i ;  $j --){                                if  ( $array [ $j ] <  $array  [ $j -1]){                                         $tmp  =  $array [ $j ];                                         $array [ $j ] =  $array [  $j -1];                                        $array  [ $j -1] =  $tmp ;                               }                       }               }                return   $array ;       }       //快速排序(数组排序)        function  quick_sort( $array  ) {                if  ( count ( $array ) <= 1)  return    $array ;                $key  =  $array  [0];                $left_arr   =  array ();                $right_arr  =  array ();                for  ( $i = 1;  $i < count ( $array  );  $i ++){                        if  ( $array [  $i ] <=  $key )                                $left_arr  [] =  $array [ $i ];                        else                                 $right_arr [] =  $array [ $i  ];               }                $left_arr  = quick_sort( $left_arr  );                $right_arr  = quick_sort(  $right_arr );                return   array_merge ( $left_arr  ,  array ( $key ),  $right_arr );       }             //------------------------        // PHP内置字符串函数实现        //------------------------        //字符串长度        function   strlen  ( $str )       {                if  ( $str  ==  ''  )  return  0;                $count  =  0;                while  (1){                        if  (  $str [ $count ] != NULL){                                 $count ++;                                continue ;                       } else {                                break ;                       }               }                return   $count ;       }       //截取子串        function   substr ( $str ,  $start ,   $length =NULL)       {                if  ( $str ==  ''  ||  $start > strlen ( $str  ))  return ;                if  (( $length !=NULL) && (  $start >0) && ( $length >  strlen ( $str )- $start ))  return ;                if  ((  $length !=NULL) && ( $start < 0) && ( $length > strlen ( $str  )+ $start ))  return ;                if  ( $length  ==  NULL)  $length  = ( strlen ( $str  ) -  $start );                                if  ( $start  <  0){                        for  ( $i =( strlen (  $str )+ $start );  $i <( strlen  ( $str )+ $start + $length  );  $i ++) {                                $substr  .=   $str [ $i ];                       }               }                if  ( $length   > 0){                        for  ( $i =  $start ;  $i <( $start + $length  );  $i ++) {                                $substr   .=  $str [ $i ];                       }               }                if  (  $length  < 0){                        for  ( $i  = $start ;  $i <( strlen (  $str )+ $length );  $i ++) {                                $substr  .=  $str [ $i  ];                       }               }                return   $substr ;       }       //字符串翻转        function   strrev ( $str )       {                if  ( $str  ==  '' )  return  0 ;                for  ( $i =( strlen ( $str )- 1);  $i >=0;  $i  --){                        $rev_str  .=  $str [ $i  ];               }                return   $rev_str ;       }             //字符串比较        function   strcmp ( $s1 ,   $s2 )       {                if  ( strlen ( $s1 ) <   strlen ( $s2 ))  return  -1 ;                if  ( strlen ( $s1 ) >  strlen (  $s2 ))  return  1;                for  ( $i  =0;  $i < strlen ( $s1  );  $i ++){                        if  ( $s1 [  $i ] ==  $s2 [ $i ]){                                continue ;                       } else {                                return  false;                       }               }                return   0;       }             //查找字符串        function    strstr ( $str ,  $substr )       {                 $m  =  strlen ( $str );                $n  =  strlen ( $substr  );                if  ( $m  <  $n )  return  false ;                for  ( $i =0;  $i  <=( $m - $n +1);  $i  ++){                        $sub  =  substr (  $str ,  $i ,  $n );                        if  (  strcmp ( $sub ,  $substr ) ==  0)   return   $i ;               }                return  false ;       }       //字符串替换        function   str_replace ( $substr  ,  $newsubstr ,  $str )       {                 $m  =  strlen ( $str );                $n  =  strlen ( $substr  );                $x  =  strlen ( $newsubstr  );                if  ( strchr ( $str ,  $substr  ) == false)  return  false;                for  (  $i =0;  $i <=( $m -  $n +1);  $i ++){                         $i  =  strchr ( $str ,   $substr );                        $str  = str_delete ( $str ,  $i ,  $n );                        $str  = str_insert( $str ,   $i ,  $newstr );               }                return   $str  ;       }             //--------------------        // 自实现字符串处理函数       //--------------------        //插入一段字符串        function  str_insert( $str ,  $i  ,  $substr )       {                for ( $j =0 ;  $j < $i ;  $j  ++){                        $startstr  .=  $str [ $j  ];               }                for  ( $j = $i ;  $j  < strlen ( $str );  $j  ++){                        $laststr  .=  $str [ $j  ];               }                $str  = ( $startstr  .  $substr   .  $laststr );                return   $str  ;       }       //删除一段字符串        function  str_delete( $str  ,  $i ,  $j )       {                for  (  $c =0;  $c < $i ;   $c ++){                        $startstr  .=  $str  [ $c ];               }                for  ( $c =(  $i + $j );  $c < strlen  ( $str );  $c ++){                        $laststr   .=  $str [ $c ];               }                 $str  = ( $startstr  .  $laststr  );                return   $str ;       }       //复制字符串        function  strcpy( $s1 ,  $s2  )       {                if  ( strlen ( $s1 )==NULL || !isset(  $s2 ))  return ;                for  ( $i =0 ;  $i < strlen ( $s1 );   $i ++){                        $s2 [] =  $s1  [ $i ];               }                return   $s2 ;       }       //连接字符串        function  strcat( $s1  ,  $s2 )       {                if  (!isset( $s1 ) || !isset(  $s2 ))  return ;                $newstr  =  $s1  ;                for ( $i =0;  $i  < count ( $s );  $i  ++){                        $newstr  .=  $st [ $i  ];               }                return   $newsstr ;       }       //简单编码函数(与php_decode函数对应)        function  php_encode( $str )       {                if  (  $str == ''  &&  strlen (  $str )>128)  return  false;                for (  $i =0;  $i < strlen  ( $str );  $i ++){                         $c  = ord( $str [ $i  ]);                        if  ( $c >31 &&  $c  <107)  $c  += 20 ;                        if  ( $c >106 &&  $c  <127)  $c  -= 75 ;                        $word  =  chr ( $c  );                        $s  .=  $word ;               }                 return   $s ;        }       //简单解码函数(与php_encode函数对应)        function  php_decode( $str )       {                if  (  $str == ''  &&  strlen ( $str  )>128)  return  false;                for (  $i =0;  $i < strlen  ( $str );  $i ++){                        $c   = ord( $word );                        if  (  $c >106 &&  $c <127 )  $c  =  $c -20;                        if  ( $c >31 &&  $c < 107)  $c  =  $c +75 ;                        $word  =  chr (  $c );                        $s  .=  $word  ;               }                 return   $s ;        }       //简单加密函数(与php_decrypt函数对应)        function  php_encrypt( $str )       {                 $encrypt_key  =  'abcdefghijklmnopqrstuvwxyz1234567890' ;                 $decrypt_key  =  'ngzqtcobmuhelkpdawxfyivrsj2468021359' ;                if  (  strlen ( $str ) == 0)  return   false;                for  ( $i =0;   $i < strlen ( $str );  $i  ++){                        for  ( $j =0;  $j  < strlen ( $encrypt_key );  $j  ++){                                if  ( $str [ $i ] ==  $encrypt_key  [ $j ]){                                        $enstr  .=   $decrypt_key [ $j ];                                        break ;                               }                       }               }                return   $enstr ;       }       //简单解密函数(与php_encrypt函数对应)      //开源代码phpfensi.com   function  php_decrypt( $str )       {                 $encrypt_key  =  'abcdefghijklmnopqrstuvwxyz1234567890' ;                 $decrypt_key  =  'ngzqtcobmuhelkpdawxfyivrsj2468021359' ;                if  (  strlen ( $str ) == 0)  return   false;                for  ( $i =0;   $i < strlen ( $str );  $i  ++){                        for  ( $j =0;  $j  < strlen ( $decrypt_key );  $j  ++){                                if  ( $str [ $i ] ==  $decrypt_key  [ $j ]){                                        $enstr  .=   $encrypt_key [ $j ];                                        break ;                               }                       }               }                return   $enstr ;       }       ?>

php字符串处理函数大全:

addcslashes — 为字符串里面的部分字符添加反斜线转义字符

addslashes — 用指定的方式对字符串里面的字符进行转义

bin2hex — 将二进制数据转换成十六进制表示

chop — rtrim() 的别名函数

chr — 返回一个字符的ASCII码

chunk_split — 按一定的字符长度将字符串分割成小块

convert_cyr_string — 将斯拉夫语字符转换为别的字符

convert_uudecode — 解密一个字符串

convert_uuencode — 加密一个字符串

count_chars — 返回一个字符串里面的字符使用信息

crc32 — 计算一个字符串的crc32多项式

crypt — 单向散列加密函数

echo — 用以显示一些内容

explode — 将一个字符串用分割符转变为一数组形式

fprintf — 按照要求对数据进行返回,并直接写入文档流

get_html_translation_table — 返回可以转换的HTML实体

hebrev — 将Hebrew编码的字符串转换为可视的文本

hebrevc — 将Hebrew编码的字符串转换为可视的文本

html_entity_decode — htmlentities ()函数的反函数,将HTML实体转换为字符

htmlentities — 将字符串中一些字符转换为HTML实体

htmlspecialchars_decode —htmlspecialchars()函数的反函数,将HTML实体转换为字符

htmlspecialchars — 将字符串中一些字符转换为HTML实体

implode — 将数组用特定的分割符转变为字符串

join — 将数组转变为字符串,implode()函数的别名

levenshtein — 计算两个词的差别大小

localeconv — 获取数字相关的格式定义

ltrim — 去除字符串左侧的空白或者指定的字符

md5_file — 将一个文件进行MD5算法加密

md5 — 将一个字符串进行MD5算法加密

metaphone — 判断一个字符串的发音规则

money_format — 按照参数对数字进行格式化的输出

nl_langinfo — 查询语言和本地信息

nl2br — 将字符串中的换行符[n]替换成[<br/>]

number_format — 按照参数对数字进行格式化的输出

ord — 将一个ASCII码转换为一个字符

parse_str — 把一定格式的字符串转变为变量和值

print — 用以输出一个单独的值

printf — 按照要求对数据进行显示

quoted_printable_decode — 将一个字符串加密为一个8位的二进制字符串

quotemeta — 对若干个特定字符进行转义

rtrim — 去除字符串右侧的空白或者指定的字符

setlocale — 设置关于数字,日期等等的本地格式

sha1_file — 将一个文件进行SHA1算法加密

sha1 — 将一个字符串进行SHA1算法加密

similar_text — 比较两个字符串,返回系统认为的相似字符个数

soundex — 判断一个字符串的发音规则

sprintf — 按照要求对数据进行返回,但是不输出

sscanf — 可以对字符串进行格式化

str_ireplace — 像str_replace()函数一样匹配和替换字符串,但是不区分大小写

str_pad — 对字符串进行两侧的补白

str_repeat — 对字符串进行重复组合

str_replace — 匹配和替换字符串

str_rot13 — 将字符串进行ROT13加密处理

str_shuffle — 对一个字符串里面的字符进行随机排序

str_split — 将一个字符串按照字符间距分割为一个数组

str_word_count — 获取字符串里面的英文单词信息

strcasecmp — 对字符串进行大小比较,不区分大小写

strchr — 通过比较返回一个字符串的部分strstr()函数的别名

strcmp — 对字符串进行大小比较

strcoll – 根据本地设置对字符串进行大小比较

strcspn — 返回字符连续非匹配长度的值

strip_tags — 去除一个字符串里面的HTML和PHP代码

stripcslashes — 反转义addcslashes()函数转义处理过的字符串

stripos — 查找并返回首个匹配项的位置,匹配不区分大小写

stripslashes — 反转义addslashes()函数转义处理过的字符串

stristr — 通过比较返回一个字符串的部分,比较时不区分大小写

strlen — 获取一个字符串的编码长度

strnatcasecmp — 使用自然排序法对字符串进行大小比较,不区分大小写

strnatcmp — 使用自然排序法对字符串进行大小比较

strncasecmp — 对字符串的前N个字符进行大小比较,不区分大小写

strncmp — 对字符串的前N个字符进行大小比较

strpbrk — 通过比较返回一个字符串的部分

strpos — 查找并返回首个匹配项的位置

strrchr — 通过从后往前比较返回一个字符串的部分

strrev — 将字符串里面的所有字母反向排列

strripos — 从后往前查找并返回首个匹配项的位置,匹配不区分大小写

strrpos – 从后往前查找并返回首个匹配项的位置

strspn — 匹配并返回字符连续出现长度的值

strstr — 通过比较返回一个字符串的部分

strtok — 用指定的若干个字符来分割字符串

strtolower — 将字符串转变为小写

strtoupper –将字符串转变为大写

strtr — 对字符串比较替换

substr_compare — 对字符串进行截取后的比较

substr_count — 计算字符串中某字符段的出现次数

substr_replace — 对字符串中的部分字符进行替换

substr — 对字符串进行截取

trim — 去除字符串两边的空白或者指定的字符

ucfirst — 将所给字符串的第一个字母转换为大写

ucwords — 将所给字符串的每一个英文单词的第一个字母变成大写

vfprintf — 按照要求对数据进行返回,并直接写入文档流

vprintf — 按照要求对数据进行显示

vsprintf — 按照要求对数据进行返回,但是不输出

wordwrap — 按照一定的字符长度分割字符串

查看更多关于php字符串字符处理函数详解 - php函数的详细内容...

  阅读:43次