一 在下面几个程序应用中涉及到的函数php
1 substr(string,start,length)数组
(1)函数做用:返回字符串的一部分。 (2)参数介绍: string:必需。规定须要返回其中一部分的字符串,即原字符串。 start:必需。规定在字符串的何处开始。正数值,在字符串的指定位置开始(注:字符串的起始位置是0);负数值,从字符串结尾的指定位置开始(注:字符串的结束位置是-1); 0,在字符串中的第一个字符处开始。 length:可选。规定要返回的字符串长度。默认是直到字符串的结尾。正数值,从start参数所在的位置开始返回改长度的字符串;负数值,从start开始至该值以前的字符串 。
2 strrchr(string, char);函数
(1)函数的做用:查找字符串在另外一个字符串中最后一次出现的位置,并返回从该位置到字符串结尾的全部字符。若是查找失败,则返回false (2)参数介绍: string:必需。规定被搜索的字符串。 char:必需。规定要查找的字符。若是该参数是数组,则搜索匹配数字ASCII值得字符。
3 strlen(string)rest
(1)函数的做用:返回字符串的长度 (2)参数的介绍: string:必需。规定要检查的字符串。
4 is_numeric(mixed $var)code
(1)函数的做用:监测变量是否为数字或数字字符串 (2)参数介绍: $var:若是var是数字或数字字符串则返回TRUE,不然返回FALSE。 (3)其余判断类型的函数:is_bool(), is_float(), is_int(), is_string(), is_object(), is_array()和is_integer().
2、应用示例展现orm
示例1:负值的start参数rem
<!-- lang: php --> <?php <!-- lang: php --> $rest = substr("abcdef", -1); <!-- lang: php --> echo $rest.'<br>'; <!-- lang: php --> $rest = substr("abcdef", -2); <!-- lang: php --> echo $rest.'<br>'; <!-- lang: php --> $rest = substr('abcdef', -3, 1); <!-- lang: php --> echo $rest.'<br>'; <!-- lang: php --> ?> 程序运行结果: f ef d
示例2:负值的length参数字符串
<!-- lang: php --> <?php <!-- lang: php --> $rest = substr("abcdef", 0, -1); <!-- lang: php --> echo $rest.'<br>'; <!-- lang: php --> $rest = substr("abcdef", 2, -1); <!-- lang: php --> echo $rest.'<br>'; <!-- lang: php --> $rest = substr("abcdef", 4, -4); <!-- lang: php --> echo $rest.'<br>'; <!-- lang: php --> $rest = substr("abcdef", -3, -1); <!-- lang: php --> echo $rest.'<br>'; <!-- lang: php --> ?> 程序运行结果: abcde cde de
示例3:基本的substr()函数用法string
<!-- lang: php --> <?php <!-- lang: php --> echo substr("abcdef", 1); <!-- lang: php --> echo '<br>'; <!-- lang: php --> echo substr("abcdef", 1, 3); <!-- lang: php --> echo '<br>'; <!-- lang: php --> echo substr("abcdef", 0, 4); <!-- lang: php --> echo '<br>'; <!-- lang: php --> echo substr("abcdef", 0 ,8); <!-- lang: php --> echo '<br>'; <!-- lang: php --> echo substr("abcdef", -1, 1); <!-- lang: php --> echo '<br>'; <!-- lang: php --> //Accessing single charecters in a string <!-- lang: php --> //can also be achieved using "square brackets" <!-- lang: php --> $string = 'abcdef'; <!-- lang: php --> echo $string[0]; <!-- lang: php --> echo '<br>' <!-- lang: php --> echo $string[3]; <!-- lang: php --> echo '<br>'; <!-- lang: php --> echo $string[strlen($string) - 1]; <!-- lang: php --> echo '<br>'; <!-- lang: php --> ?> 程序运行结果: bcdef bcd abcd abcdef f a d f
示例4:移除后缀it
<!-- lang: php --> <?php <!-- lang: php --> //removes string from the end of other <!-- lang: php --> function removeFormEnd($string, $stringToMove){ <!-- lang: php --> //得到须要移除的字符串的长度 <!-- lang: php --> $stringToRemoveLen = strlen($stringToMove); <!-- lang: php --> //获取原始字符串的长度 <!-- lang: php --> $stringLen = strlen($string); <!-- lang: php --> <!-- lang: php --> //计算须要保留字符串的长度 <!-- lang: php --> $pos = $stringLen - $stringToRemoveLen; <!-- lang: php --> <!-- lang: php --> $out = substr($string, 0, $pos); <!-- lang: php --> return $out; <!-- lang: php --> } <!-- lang: php --> $string = 'nowamagic.jpg.jpg'; <!-- lang: php --> $result = removeFromEnd($string, '.jpg'); <!-- lang: php --> echo $result; <!-- lang: php --> ?> 程序运行结果: nowamagic.jpg
示例5:太长的字符串只显示首尾,中间用省略号代替
<!-- lang: php --> <?php <!-- lang: php --> $file = "HelloThisFileHasMoreThan30CharactersAndThisFayl.exe"; <!-- lang: php --> function funclongwords($file){ <!-- lang: php --> if(strlen($file) > 30){ <!-- lang: php --> $vartypesf = strrchr($file, "."); <!-- lang: php --> //获取搜索到的字符的字符串总长度 <!-- lang: php --> $vartypesf_len = strlen($vartypesf); <!-- lang: php --> //截取左边15个字符 <!-- lang: php --> $word_l_w = substr($file, 0, 15); <!-- lang: php --> //截取右边15个字符串 <!-- lang: php --> $word_r_w = substr($file, -15); <!-- lang: php --> $word_r_a = substr($word_r_w, 0, -$vartypesf_len); <!-- lang: php --> return $word_l_w."...".$word_r_a.$vartypesf; <!-- lang: php --> }else{ <!-- lang: php --> return $file; <!-- lang: php --> } <!-- lang: php --> } <!-- lang: php --> $result = funclongwords($file); <!-- lang: php --> echo $result; <!-- lang: php --> ?> 程序运行结果: HelloThisFileHa...AndThisFayl.exe
示例6:格式化字符串
<!-- lang: php --> <?php <!-- lang: php --> function str_format_number($string, $format){ <!-- lang: php --> if($format == '') return $string; <!-- lang: php --> if($string == '') return $string; <!-- lang: php --> $result = ''; <!-- lang: php --> $formatPos = 0; <!-- lang: php --> $stringPos = 0; <!-- lang: php --> while((strlen($format) -1) >= $formatPos){ <!-- lang: php --> //if it's a number => stores it <!-- lang: php --> if(is_numeric(substr($format, $formatPos,1))){ <!-- lang: php --> $result .= substr($string, $stringPos, 1); <!-- lang: php --> $stringPos++; <!-- lang: php --> //if it's not a number => stores the caracter <!-- lang: php --> }else{ <!-- lang: php --> $result .= substr($format, $formatPos, 1); <!-- lang: php --> } <!-- lang: php --> //Next caracter at the mask <!-- lang: php --> $formatPos++; <!-- lang: php --> } <!-- lang: php --> return $result; <!-- lang: php --> } <!-- lang: php --> //For the numbers at Buenos Aires, Argentina <!-- lang: php --> //Example 1: <!-- lang: php --> $string = "8607562337788"; <!-- lang: php --> $format = "+00 0000 0000000"; <!-- lang: php --> echo str_format_number($string, $format); <!-- lang: php --> echo '<br>'; <!-- lang: php --> //Example 2: <!-- lang: php --> $string = "8607562337788"; <!-- lang: php --> $format = "+00 0000 00.0000000"; <!-- lang: php --> echo str_format_number($string, $format); <!-- lang: php --> echo '<br>'; <!-- lang: php --> //Example 3: <!-- lang: php --> $string = "8607562337788"; <!-- lang: php --> $format = "+00 0000 00.000 a"; <!-- lang: php --> echo str_format_number($string, $format); <!-- lang: php --> echo '<br>'; <!-- lang: php --> ?> 运行结果: +86 0756 2337788 +86 0756 23.37788 +86 0756 23.377 a