php怎么删除指定字符间的字符串
时间:2022-02-11 13:47
php删除指定字符间的字符串的方法:1、创建一个PHP示例文件;2、输入代码“public function getStr(){...}”;3、通过getStr方法删除字符串中指定两段字符中间的的字符即可。 本文操作环境:windows7系统、PHP7.1版、Dell G3电脑。 php怎么删除指定字符间的字符串? PHP删除字符串中指定两段字符中间的的字符 PS:遇到了,小计一下 推荐学习:《PHP视频教程》 以上就是php怎么删除指定字符间的字符串的详细内容,更多请关注gxlsystem其它相关文章!做项目中遇到的问题,需要删除字符串中指定两段字符中间的的字符。
public function getStr()
{
//str是一串有规则的字符串,现在我想删除其中一段,代码如下
$str="1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11";
//获取开始位置,选择 ,2,(防止和时间的年份冲突)
$i1=strpos($str,',2,');//开始位置
$i2=strpos($str,',',$i1+3);//结束位置
$str1=substr($str,0,$i1) . substr($str,$i2,strlen($str));
echo $str."<br>".$str1;//换行输出,对比结果
//输出结果
//1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11
//1,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11
//OK,完美。
}
简单封装一下(感觉封装后反倒麻烦了),但还是记录一下吧
public function getStr($str,$str1,$n1,$str2,$n2)
{
/**
* $str为要处理的字符串
* $str1为选中的唯一字符串
* $n1为从$str中第几个字符串开始截取
* $str2为选中的唯一字符串
* $n2为从$str2中第几个字符串结束截取
*/
$i1=strpos($str,$str1)+$n1;
$i2=strpos($str,$str2,$i1)+$n2;
$str1=substr($str,0,$i1-1) . substr($str,$i2,strlen($str));
return $str1;
}
举个栗子,用封装方法就做如下
//对应的五个值如下
$str="1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11";
$str1=",2,";
$n1="2"; //从指定值中的2 开始截取
$str2=",";
$n2="1"; //截取到指定值中的第一位,也就是,
echo(getStr($str,$str1,$n1,$str2,$n2)); //嗯,结果也一样,就是感觉没弄好,也不简单哈