</pre><pre name="code" class="php"><?php
//查找
/* 字串查找:strpbrk
* 首次出现的位置 strpos return(int 0--start)
* 最后一次出现 strrchr
*/
echo "<br>-------字串查找--strpbrk--------<br>";
echo strpbrk('abab', 'b').'<br>'; //bab
echo strpos('abab', 'a').'<br>'; //0
echo strrchr('abab', 'a').'<br>'; //ab
/* 字串比较
* int strncmp(string str1,str2[,int len])
* str1>str2 正 1
* str1=str2 0
* str1<str2 负 -1
* len 从左(1)至右位子对比
* strcasecmp(),strncasecmp(),strnatcasecmp(),strstr(),natsort() and natcasesort()
*/
echo "<br>-------定位字符--strpos--------<br>";
$str = 'abcd@yahoo.com';
echo strpos($str, '@'); //4
echo substr($str, 0,strpos($str,'@')).'<br>'; //abcd
echo "<br>-------字串重复--str_repeat--------<br>";
echo str_repeat("aabb", 2).'<br>'; //aabbaabb
echo "<br>-------字串出现的次数--substr_count--------<br>";
echo substr_count("aabb", 'a')."<br>";
echo "<br>-------字串比较--strncmp--------<br>";
echo strcmp("aaa", "bbb")."<br>"; //-1
echo strncmp("aaa", "abb",1)."<br>"; //0
//strstr 匹配开始至尾
echo strstr("aaa@yahoo.com","@")."<br>"; //@yahoo.com
//third parm(true print: left;false print:right)
echo strstr("aaa@yahoo.com", "@",true); //aaa
echo strstr("aaa@yahoo.com", "@",false); //@yahoo.com
/* trim,ltrim,rtrim,chop(同trim) 去除空格和其他特殊符号
* string trim(string str[,string charlist])
* 缺省默认:空格(" ")、制表符(\t)、换行符(\n)、回车符(\r)、空值(\0)
* 用“..”通过第2个参数指定需要去除一个范围内的字符,如“a..d”指去掉ASCII码值介于a和d之间的字符
*/
echo "<br>-------去除空格和其他特殊符号--trim,ltrim,rtrim,chop(同trim)--------<br>";
$str = '.3去除空格和其他特殊符号圳6.6';
echo trim($str,', .')."<br>"; //3去除空格和其他特殊符号圳6.6
echo trim($str,'0..9')."<br>"; //.3去除空格和其他特殊符号圳6.
echo "<br>-------加入和去除反斜杠--addcslashes--------<br>";
$str = "this is 加入和去除反斜'杠";
$stri = addcslashes($str, "'")."<br>";
echo $stri; //this is 加入和去除反斜\'杠
echo addcslashes($str, "th")."<br>"; //\t\his is 加入和去除反斜'杠
echo stripcslashes($stri); //去掉所有反斜杠
/* 分解字符串
* array split(string pattern,string str[,int limit])
* pattern 为分解标识符号,str 为操作原始串,limit 返回串个数的最大值
*/
echo "<br>-------分解字符串--split--------<br>";
$date = date("Y-m-d H:i:s");
list($y,$m,$d,$h,$i,$s) = split('[- :]', $date);
echo "$y 年$m 月 $d 日 $h 时 $i 分$s 秒<br>";
/* 格式化字符串
* string sprintf(string format,mixed[args]...)
* 常格式化数据的函数还有:printf(),sscanf(),fscanf()从文件中格式化输入,vsprintf() and number_format();
*/
echo "<br>-------格式化字符串--sprintf--------<br>";
$name = '小王';
$money = 100.5;
echo sprintf("name: %s,money: %01.2f",$name,$money);
printf("%d", "2014"); //2014
printf("%d", "2,014"); //2
printf("%d", ",2014"); //0
echo "<br>-------大小写转换----------<br>";
$str = 'aa bb CC';
echo strtolower($str)."<br>"; //aa bb cc
echo strtoupper($str)."<br>"; //AA BB CC
echo ucfirst($str)."<br>"; //Aa bb CC
echo ucwords($str)."<br>"; //Aa Bb CC
/*
* substr从左(0)到右
*/
echo "<br>-------字串获取(截获)--substr--------<br>";
$date = date("Y-m-d H:i:s"); //2014-06-04 15:21:50
echo substr($date, 1)."<br>"; //014-06-04 15:21:50
echo substr($date, 0,4)."<br>"; //2014
echo substr($date, 11,5)."<br>"; //15:21
echo "<br>-------字串替换--substr_replace--------<br>";
echo substr_replace($date, '2015', 0,4)."<br>"; //2015-06-04 15:21:50
echo str_replace("bbb", "aaa", "bbbccc").'<br>'; //aaaccc
echo "<br>-------字串填充--substr_replace--------<br>";
$input = 'aa';
echo str_pad($input,6)."<br>"; //'aa '
echo str_pad($input,6,'-').'<br>'; //'aa----'
echo str_pad($input, 6,'-',STR_PAD_LEFT)."<br>"; //'----aa'
echo str_pad($input, 6,'-',STR_PAD_BOTH)."<br>"; //'--aa--'
echo "<br>-------求串长度--strlen--------<br>";
//把所有人的邮件名改为bbb
$email = 'aaa@yahoo.com';
$i = strpos($email, "@");
$name = substr($email, 0,$i);
//echo substr_replace($email, "bbb", 0,$i); //bbb@yahoo.com
echo substr_replace($email, "bbb", 0,strlen($name)); //bbb@yahoo.com
/* 获取ASCII编码
* string chr(int ascii)
* int ord(string string)
*/
echo "<br>-------获取ASCII编码--chr,ord--------<br>";
echo chr(65)."<br>"; //A
echo ord('A')."<br>"; //65
/* 字串排序
* natsort(),sort()
*/
echo "<br>-------字串排序--natsort,sort--------<br>";
$arr1 = array('img1.png','img10.png','img2.png');
sort($arr1);
print_r($arr1);
natsort($arr1);
print_r($arr1);
/*
Array
(
[0] => img1.png
[1] => img10.png
[2] => img2.png
)
Array
(
[0] => img1.png
[2] => img2.png
[1] => img10.png
)
*/
echo "<br>-------字串转为数组--str_split--------<br>";
print_r( str_split('aabbcc')); //Array ( [0] => a [1] => a [2] => b [3] => b [4] => c [5] => c )
print_r(str_split('aabbcc',2)); //Array ( [0] => aa [1] => bb [2] => cc )
echo "<br>-------MD5----------<br>";
//echo md5_file("C:\d\d.txt")."<br>"; //d.txt 文件要存在
//echo md5("C:\d\d.txt");