字符串的分割/组合/逆序等

<?php

//分割与组合字符串
//emplode()和implode()函数的优点,对于分隔符固定的字符串,使用起来比较方便,
//但如果分割字符并不固定,则应运用令牌方法strtok()分割

$email = '[email protected]';
$new = explode('@',$email);		//分割字符串,第一个参数为分割字符串(可为单个字符或者多个字符),第二个为被分割的字符串
echo $email.'<br />';			//不改变原变量的值
echo $new.'<br />';				//返回数组
print_r($new);
echo '<br />';

//分割后重新组合
$str = implode('@',$new);	   //组合字符串,第一个参数为组合字符,第二个为数组变量,返回一个新字符串
echo $str.'<br />';;

$arr = array('Who','am','I');
echo implode(' --- ',$arr);
echo '<br />';
echo join('******',$arr);	   //join()与implode()相同
echo'<br />';

//令牌方法分割字符串strtok()
$str = "Today is a nice day!";
echo strtok($str,' ');
echo strtok($str,' ');		//指针不会自动下移,始终指向起始位置
echo strtok(' ');			//省略第一个参数,获取下一项
echo '<br />';

//利用while循环分割并读取元素
$tok = strtok($str,' ');
echo $tok.'<br />';
while($tok){
	echo $tok.'<br />';
	$tok = strtok(' ');
}

//当分割字符不同时
$str = "Today,is.a/nice&day!";	//如果分割符是多字符怎么办????
$tok = strtok($str,',./&');
while($tok){
	echo $tok.'<br />';
	$tok = strtok(',./&');
}

//其他
echo substr($str,4,2);			//参数1:字符串,参数2:开始位置,参数3:取出的长度
echo '<br />';
print_r(str_split($str));		//所有字符(字节)拆分成新数组的每一个元素
echo '<br />';		
$str2 = '能拆分中文吗?';
echo $str2;
print_r(str_split($str2));		//输出数组元素值为乱码,不适合中文,因为中文为两个字节一个字
echo '<br />';
echo strrev($str);				//将字符串按照字节逆序,所以也不适用与中文
echo '<br />';
echo strrev($str2);

?>

输出结果:

字符串的分割/组合/逆序等_第1张图片

你可能感兴趣的:(php字符串分割组合)