PHP函数
PHP函数 字符串函数
## 一、大小写 - strtolower( $string ) :把字符串全部转换为小写 - trtoupper( $string ):把字符串全部转换为大写 - ucfirst( $string ):把字符串中的首字符转换为大写 - lcfirst( $string ):使一个字符串的第一个字符小写 - ucwords( $string ):把字符串中每个单词的首字符转换为大写 ## 二、查找位置 ##### 查找字符串needle 在另一字符串haystack 中第一次出现的位置 - stripos( $haystack , $needle [, int $offset = 0 ] ):不区分大小写 - strpos ( $haystack , $needle [, int $offset = 0 ] ):对大小写敏感 ##### 查找字符串needle 在另一字符串haystack 中最后一次出现的位置 - strripos ( $haystack , $needle [, int $offset = 0 ] ) :不区分大小写 - strrpos ( $haystack , $needle [, int $offset = 0 ] ) :对大小写敏感 ## 三、替换字符串 ##### 用$replace替换字符串$subject中的$search,$count保存被替换的数量 【也可以用在数组】 - str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] ):对大小写敏感 - str_ireplace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] ):不区分大小写 ##### 在字符串 string中将由 start 和可选的 length 参数限定的子字符串使用 - replacement 进行替换 【也可以用在数组】 - substr_replace ( mixed $string , mixed $replacement , mixed $start [, mixed $length ] ) - substr_replace(‘aaaaa’,’###’,1,2); // a##aa ##### 返回 str 的一个副本,并将在 from 中指定的字符转换为 to 中相应的字符。 如果from与 to长度不相等,那么多余的字符部分将被忽略。str 的长度将会和返回的值一样。 - strtr ( $str , $from , $to ) - strtr ( $str , array $replace_pairs ) ## 四、截取字符串,返回子字符串 ##### 返回字符串 string 由 start 和 length 参数指定的子字符串 - substr ( $string , int $start [, int $length ] ) ##### 返回 haystack 字符串从 needle 第一次出现的位置开始到 haystack 结尾的字符串 - strstr( $haystack , mixed $needle [, bool $before_needle = false ] ) :区分大小写 - stristr( $haystack , mixed $needle [, bool $before_needle = false ] ) :不区分大小写 ##### 返回haystack字符串中的一部分,这部分以 needle 的最后出现位置开始,直到末尾。 - strrchr ( $haystack , mixed $needle ) ##### 在haystack 中查找一组字符的任何一个字符,返回指定字符第一次出现的位置开始的剩余部分。 对大小写敏感 - strpbrk ( $haystack , $char_list ) ## 五、HTML与字符串 ##### HTML 实体转换为字符 - html_entity_decode ( $string [, int $flags [, $encoding = ini_get("default_charset") ]] ) - htmlspecialchars_decode ( $string [, int $flags = ENT_COMPAT | ENT_HTML401 ] ) ##### 字符转换为 HTML 实体 - htmlentities ($string [,int $flags[, $character-set [, bool $double_encode = true ]]] ) - htmlspecialchars (string,flags,character-set,double_encode) ##### 返回使用 htmlspecialchars() 和 htmlentities() 后的转换表 - get_html_translation_table ([ int $table = HTML_SPECIALCHARS [, int $flags [, $encoding = 'UTF-8' ]]] ) ##### 在字符串所有新行之前插入 HTML 换行标记 - nl2br ( $string [, bool $is_xhtml = true ] ) ##### 从字符串中去除 HTML 和 PHP 标记 - strip_tags ( $str [, $allowable_tags ] ) ## 六、删除空格和预定义字符 ##### 从字符串左侧删除空格或其他预定义字符 - ltrim ( $str [, $character_mask ] ) ##### 从字符串右侧删除空格或其他预定义字符 - rtrim ( $str [, $character_mask ] ) ##### 从字符串的两端删除空白字符和其他预定义字符 - trim ( $str [, $character_mask ] ) ## 七、比较字符串 ##### 二进制安全字符串比较 - strcmp ( $str1 , $str2 ) 区分大小写 - strcoll( $str1 , $str2 ) 区分大小写 - strcasecmp ( $str1 , $str2 ) 不区分大小写 - strncmp ( $str1 , $str2 , int $len ) 可以指定两个字符串比较时使用的长度。区分大小写 - strncasecmp ( $str1 , $str2 , int $len ) 可以指定两个字符串比较时使用的长度。不区分大小写 - substr_compare ( $main_str , $str , int $offset [, int $length ) 从偏移位置比较指定长度 ##### 使用自然排序算法比较字符串 - strnatcmp ( $str1 , $str2 ) 区分大小写 - strnatcasecmp ( $str1 , $str2 ) 不区分大小写 ##### 计算两个字符串的相似度 - similar_text ( $first , $second [, float &$percent ] ) ## 八、转义与反转义 - addcslashes( $str , $charlist ):以 C 语言风格使用反斜线转义字符串中的字符 - addslashes( $str ) :函数在指定的预定义字符前添加反斜杠。 - stripcslashes ( $str :反引用一个使用 addcslashes() 转义的字符串 - stripslashes( $str ):反引用一个引用字符串 - quotemeta ( $str ):转义元字符集 ## 九、加密/编码/解码/进制 - md5 ( $str [, bool $raw_output = false ] ):计算字符串的 MD5 散列。 - md5_file( $filename [, bool $raw_output = false ] ):计算文件的 MD5 散列。 - sha1( $str [, bool $raw_output = false ] ):计算字符串sha1散列。 - sha1_file ( $filename [, bool $raw_output = false ] ) :计算文件的 sha1散列值。 - crypt ( $str [, $salt ] ):单向字符串散列 - bin2hex ( $str ):把ASCII字符的字符串转换为十六进制值 - hex2bin ( $data ):转换十六进制字符串为二进制字符串 - quoted_printable_encode ( $str ):将 8-bit 字符串转换成 quoted-printable 字符串 - quoted_printable_decode ( $str ):将 8-bit 字符串转换成 quoted-printable 字符串 - crc32 ( $str ):生成 str 的 32 位循环冗余校验码多项式。这通常用于检查传输的数据是否完整。 - convert_uuencode ( $data ) :函数使用 uuencode 算法对字符串进行编码。编码后的数据 将会比源数据大35%左右 - convert_uudecode ( $data ) :解码一个 uuencode 编码的字符串 ## 十、输出控制 - echo ( $arg1 ):输出一个或多个字符串 - print ( $arg ):输出字符串 - vprintf ( $format , array $args ):输出格式化字符串 - vsprintf ( $format , array $args ):作用与 sprintf() 函数类似,接收一个数组参数 - printf($format [, mixed $args [, mixed $... ]] ):依据 format 格式参数产生输出。 - sprintf ( $format [, mixed $args [, mixed $... ]] ) :把格式化的字符串写入变量中。 - sscanf ( string $str , string $format [, mixed &$... ] ) :根据指定格式解析输入的字符,类似 printf() - fprintf ( resource $handle , $format [, mixed $args [, mixed $... ]] ):将格式化后的字符串写入到流 - vfprintf ( resource $handle , $format [, mixed $args [, mixed $... ]] ):与 fprintf() 函数类似,但是接收一个数组参数,而不是一系列可变数量的参数。 **format可能的格式值:** - %% - 返回一个百分号 % - %b - 二进制数 - %c - ASCII 值对应的字符 - %d - 包含正负号的十进制数(负数、0、正数) - %e - 使用小写的科学计数法(例如 1.2e+2) - %E - 使用大写的科学计数法(例如 1.2E+2) - %u - 不包含正负号的十进制数(大于等于 0) - %f - 浮点数(本地设置) - %F - 浮点数(非本地设置) - %g - 较短的 %e 和 %f - %G - 较短的 %E 和 %f - %o - 八进制数 - %s - 字符串 - %x - 十六进制数(小写字母) - %X - 十六进制数(大写字母) 附加的格式值。必需放置在 % 和字母之间(例如 %.2f): - \+ (在数字前面加上 + 或 - 来定义数字的正负性。默认情况下,只有负数才做标记,正数不做标记) - \'(规定使用什么作为填充,默认是空格。它必须与宽度指定器一起使用。例如:%'x20s(使用 "x" 作为填充)) - \- (左调整变量值) - [0-9] (规定变量值的最小宽度) - [0-9] (规定小数位数或最大字符串长度) 注释:如果使用多个格式值,它们必须按照以上顺序。 ## 十一、字符串与数组 ##### 1、字符串转为数组 - explode( $delimiter, $string ) - str_split ( $string [, int $split_length = 1 ] ):将一个字符串转换为数组。 - str_getcsv( $input [,$delimiter = "," [,$enclosure = '"'[, $escape = "\\" ]]] ):解析 CSV 字符串为一个数组 ##### 2、数组转为字符串 - implode( $delimiter, $array ) - list() ## 十二、分隔字符串 ##### 函数把字符串分割为一连串更小的部分 - chunk_split( $body [, int $chunklen = 76 [, $end = "\r\n" ]] ) ##### 通过千位分组来格式化数字 - number_format( $number [, $decimals = 0 ] [, $dec_point = "." , $thousands_sep = "," ]) ##### 将字符串 str 分割为若干子字符串,每个子字符串以 token 中的字符分割。 - strtok ( $str , $token ) 注意仅第一次调用 strtok 函数时使用 string 参数。后来每次调用 strtok,都将只使用 token 参数,因为它会记住它在字符串 string 中的位置。如果要重新开始分割一个新的字符串,你需要再次使用 来调用 strtok 函数,以便完成初始化工作。可以在 token 参数中使用多个字符。字符串将被该参数中任何一个字符分割。 ## 十三、字符串操作 - strrev( $string ) :反转字符串,前后颠倒 - parse_str ( $str [, array &$arr ] ) :把查询字符串解析到变量中。 - str_shuffle ( $str ) :随机打乱一个字符串 - str_repeat ( $input , int $multiplier ):重复一个字符串 ##### 使用字符串断点将字符串打断为指定数量的字串 - wordwrap ( $str [, int $width = 75 [, $break = "\n" [, bool $cut = false ]]] ) ##### 用另一个字符串填充字符串为指定长度 - str_pad ( $input , int $pad_length [, $pad_string = " " [, int $pad_type = STR_PAD_RIGHT ]] ) ## 十四、字符串统计 ##### 获取字符串长度 - strlen( $string) ##### 统计 string 中单词的数量 - str_word_count ( $string [, int $format = 0 [, $charlist ]] ): ##### 统计 string 中每个字节值(0..255)出现的次数 - count_chars ( $string [, int $mode = 0 ] ) ##### 返回子字符串needle 在字符串 haystack 中出现的次数。注意 needle 区分大小写。 - substr_count ( $haystack , $needle [, int $offset = 0 [, int $length ]] ) ##### 计算字符串中全部字符都存在于指定字符集合中的第一段子串的长度 - strspn ( $subject , $mask [, int $start [, int $length ]] ) ##### 计算两个字符串之间的编辑距离 - int levenshtein ( $str1 , $str2 ) - int levenshtein ( $str1 , $str2 , int $cost_ins , int $cost_rep , int $cost_del ) 说明:编辑距离,是指两个字串之间,通过替换、插入、删除等操作将字符串str1转换成str2所需要操作的最少字符数量。 该算法的复杂度是 O(m*n),其中 n 和 m 分别是str1 和str2的长度 ## 十五、其他 ##### ASCII - string chr ( int $ascii ) 返回相对应于 ascii 所指定的单个字符 - int ord ( string $string ) 返回字符的 ASCII 码值 ##### 设置地区信息 - string setlocale ( int $category , string $locale [, string $... ] ) ##### 对字符串执行 ROT13 转换 - string str_rot13 ( string $str ) ##### 获取不匹配遮罩的起始子字符串的长度 - int strcspn ( string $str1 , string $str2 [, int $start [, int $length ]] )
顶部
收展
底部
[TOC]
目录
PHP函数 字符串函数
PHP函数 数组函数
PHP函数 文件目录函数
日期时间函数
MySQL函数
正则函数
数学函数
cURL 函数
XML函数
加密函数
Session函数
URL函数
Apache 函数
Bzip2 压缩与归档扩展
GNU Readline 针对命令行的扩展
网络函数
进程控制
变量与类型相关扩展函数
影响 PHP 行为的扩展
相关推荐
PHP基础
PHP设计模式
PHP算法
PHP版本