Blogger Information
Blog 49
fans 0
comment 1
visits 46755
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
php常用的字符串操作 ----2018年04月18日
失去过去的博客
Original
834 people have browsed it

实例

<?php
// 字符串的查找与替换
/*
 * 1.strpos ($str1,$str2,$offset);功能查找参数2在参数1中的首次出现的位置 返回值是位置 $offset 从索引的偏移量开始查找 返回值也是索引的位置
 * 2.strstr ($str1,$str2)功能 查找参数2是否在参数1的子串 如果是存在 返回参数1中符合的字符串到最后 不是返回false
 * 3.str_replace($str1,$str2,$str3,$num)子串替换 参数1要被替换的子串 ,参数2替换的后的字符串 ,参数3 要替换的字符串 参数4 替换的次数
 * 4.substr_replace($str1,$str2,$str3,$start,$length) 参数1 字符串对象 参数2 要替换的字符串  参数3  参数4替换的起始位置  参数5替换的长度
 * 
 * */
 $str1 = 'www.baidu.baidu.com';
//1.strpos 

 echo strpos($str1,'b').'<br>';//返回第一次出现b的索引位置
	echo strpos($str1,'b',3);//索引偏移量 第三参数不允许负值
//2.strstr($haystack, $needle) 参数2是否在参数1中 	
echo '<hr>';
echo strstr($str1, 'baidu');//返回值 baidu.com
echo '<hr>';
//3.字符串替换 str_replace($search, $replace, $subject)
$phonenum = '13295962675';
echo str_replace('9596','医院医院',$phonenum);//所有符合的字符串都会被替换
//4.substr_replace() 
echo'<hr>';
//替换成字符 开始位置和长度
echo substr_replace($phonenum, '医院医院', 3,4);
echo '<hr>';

/*
 * 二 .删除或填冲指定的内容
 * 
 *   ltrim()去掉参数1左边去掉空格 参数2指定左边要删除的字符串
 * 	rtrim()去掉参数1右边去掉空格 参数2指定右边要删除的字符串
 * trim()去掉参数1两边去掉空格 参数2指定两边要删除的字符串
 * str_pad($input, $pad_length,$string,const)填充  参数一要填充的字符串  填充后的总长度
 * chunk_split() 将字符串按大小切成小块并指定分隔符
 * 
 * */ 
// 1.ltrim($str)	
	$name = '    威廉史密斯     ';
	echo strlen($name);//原字符串长度
	echo ltrim($name);
	echo strlen(ltrim($name)); //现在的字符串长度
	echo '<hr>';
// 2.rtrim($str)	

	echo strlen($name);//原字符串长度
	echo rtrim($name);
	echo strlen(rtrim($name)); //现在的字符串长度
	echo '<hr>';
// 3.trim($str)	
	$name = '    威廉史密斯     ';
	echo strlen($name);//原字符串长度
	echo trim($name);
	echo strlen(trim($name)); //现在的字符串长度
	echo '<hr>';	
//4.str_pad()
	$internetion  = 'republic';
	echo str_pad($internetion,15,'医院*',STR_PAD_BOTH);	echo '<hr>';//参数2 是填充后的总长度 参数4是常量  
	echo str_pad($internetion,15,'医院*',STR_PAD_LEFT);	echo '<hr>';
	echo str_pad($internetion,15,'医院*',STR_PAD_RIGHT);	echo '<hr>';
//5.chunk_split()字符串分割
echo chunk_split($internetion,2,'.');//参数1 分割对象 参数二分割的长度大小 参数3 指定分割符


/*
 * 
 * 
 * 字符串的长度计算
 * 1.strlen() 返回字符串的长度
 * 2.mb_strlen () 返回接近于实际的字符数长度
 * 
 * 
 * */
 	echo '<hr>';
 //strlen()
 $cpu = 'AMD骁龙';
 echo strlen($cpu); 
 	echo '<hr>';
// 2.mb_strlen($cpu,$encoding);
 echo mb_strlen($cpu);//参数二是指定字符集编码
 echo mb_strlen($cpu,'GB2312');//参数二是指定字符集编码
 echo '<hr>';
// 获取当前文件的字符集编码 使用函数 mb_internal_encoding
echo '当前的字符集编码是:'.mb_internal_encoding();
/*
 * 
 * 三、字符串的比较运算 
 *   
 * 
 * */
// 1.strcmp($str1, $str2)二进制安全字符比较
echo '<hr>';
$str1 = 'php中文网';
$str2 = 'PHP中文网';
 
ECHO strcmp($str1, $str2)==0?'相等':'不相等';//比较运算 如果两个字符串相等返回值是0 如果不相等是大于0
echo '<hr>';
//2.strcasecmp() 
ECHO strcasecmp($str1, $str2)==0?'相等':'不相等';//比较运算区分大小写 如果两个字符串相等返回值是0 如果不相等是大于0 
echo '<hr>';
//3. strncmp()
ECHO strncmp($str1, $str2,3)==0?'相等':'不相等';//比较运算 参数3是指 从左边开始比较的字符串长度。 如果两个字符串相等返回值是0 如果不相等是大于0
echo '<hr>';
//4.strncasecmp() 
echo strncasecmp($str1, $str2,3)==0?'相等':'不相等';//比较运算 参数3是指 从左边开始比较的字符串长度。 如果两个字符串相等返回值是0 如果不相等是大于0 不区分大小写
echo '<hr>';
//strspn()计算字符串在指定的字符集中是否存在 返回值是存在的个数  只能是第一个 子串 第二个子串就无效了
$mytel = '19912672412';
echo strspn($mytel, '123456789');//返回值是11  
echo strspn($mytel, '123456789',0,5);//参数3 起始位置 参数4长度
//5.strcspn()//是strspn 的取反 判断字符串参数一不在  参数2字符串中 返回不存在的字符长度
echo '<hr>';
echo strcspn($mytel, 'xdsajkddnjsk');

//四、字符串与数组的转换 
echo "<hr><pre>";
//1.str_split($string ,$length);将字符串的分割为数组 参数2是分割数组的长度
$string1 = '01020304050607080910';
print_r (str_split($string1,2));//字符串转换成数组 无参数2时 默认是一个字符
//2.explode()参数1  指定的分割符  参数2 分割的字符串 参数3 每个数组元素的字符串数量
$string2 = 'java,php,js,html,python';
print_r(explode(',',$string2,3));//参数3  组合后的数组长度 注意  剩下的全部归集到最后一个数组元素中
//3.implode ()数组组合成字符串 参数1 分割符  参数2 要组合成字符串的数组
$string3 = (explode(',',$string2,3));
print_r(implode('--', $string3));
echo '<hr>';
	print_r(implode(',', $string3));
echo '<hr>';	
print_r(implode('*', $string3));

//五、html与字符串之间的转换
$str = <<< 'NOWDOC'
<h4>PHP课程介绍</h4>
<ol>
	<li>'PHP'基本语法&案例</li>
	<li>"PHP"的数据库操作</li>
	<li>\PHP面向对象编程</li>
</ol>
NOWDOC;
echo '原始字符串'.$str.'<hr>';
//1.addslashes($str) 对单引号 双引号 反斜线 进行转义
$str2 = addslashes($str);
echo $str2;
//2.stripslashes() 去掉字符串中的转义反斜线字符
echo stripslashes($str2);
//3.htmlspecialchars()将dom中的html实体化
$string4 =  htmlspecialchars($str);//所有的结构都会按字符串的方式输出
echo $string4;


//4.将实体化后的html代码还原成dom结构显示htmlspecialchars_decode
 $string5 = htmlspecialchars_decode($string4);
  echo $string5;
 echo '<hr>';
 
 //5.从字符串中删除html代码 输入纯文本  strip_tags($str,$tags)
 echo strip_tags($string5);//参数2 指定标签
  echo '<hr>';
 echo strip_tags($string5,'<h4>');//参数2 指定保留标签
 
 ?>

运行实例 »

点击 "运行实例" 按钮查看在线实例


Correction status:Uncorrected

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post