php删除字符串末尾子字符,删除开始字符,删除两端字符(实现代码)

yipeiwu_com6年前PHP代码库
今天在处理删除字符串两端的特定字符时遇到了下面的问题,先看例子
<SPAN style="FONT-SIZE: 18px"></SPAN> 
$str = 'akmumu/writedb.json'; 
我要做的是删除开始的akmumu,再删除末尾的.json,这样只保留有用的字符/writedb
开始我使用的ltrim删除akmumu,再使用rtrim删除.json
结果发现我理解trim错误了,trim的参数如下
rtrim(string,charlist)
他的参数时charlist,也就是不一定按照顺序查找,比如我给一个
$str = 'akmumu/writedbsojn.json';
结果还是/write,我想要的/writedbsojn没有出现,也就是说只要charlist中的任意字符匹配就一直这么下去了。。。
所以就用别的了
str_replace,substr_replace即可
安全起见,增加了代码,防止再截取错误
复制代码 代码如下:

if(strpos($str,'akmumu/') !== FALSE
 $str = substr($str,7);
 if(strpos($str,'.json') !== FALSE)
 {
  if(substr($str,-5,5) == '.json')
  {
   $str = substr_replace($str,'',-5);
  }
 } 
}

这样就可以了

相关文章

如何使用Linux的Crontab定时执行PHP脚本的方法

下面介绍Crontab的两种方法。 一、在Crontab中使用PHP执行脚本 就像在Crontab中调用普通的shell脚本一样(具体Crontab用法),使用PHP程序来调用PHP脚本...

UCenter Home二次开发指南

前言本文将就UCH二次开发这个核心主题,以各种实现的代码为主,辅助部分说明概略的讲解如何针对UCH进行二次开发。过段时间UCH就开源了,准备到时候再详细的写篇UCH机制分析。 顺便说下,...

PHP多进程简单实例小结

本文实例讲述了PHP多进程。分享给大家供大家参考,具体如下: PHP创建多进程需要使用到pcntl模块 在编译时加上--enable-pcntl打开进程控制支持,不是Unix类系统不支持...

C# Assembly类访问程序集信息

C#中通过Assembly类可以访问程序集信息. 1.允许访问给定程序集的元元素,包含可以加载和执行程序集的方法; 2.加载程序集:使用静态方法Assembly.Load(程序集名称)或...

PHP中soap用法示例【SoapServer服务端与SoapClient客户端编写】

本文实例讲述了PHP中soap用法。分享给大家供大家参考,具体如下: 一、首先要设置服务器环境 修改php.ini 得添加extension=php_soap.dll (加载soap 内...