Heim  >  Artikel  >  php教程  >  php删除字符串末尾子字符,删除开始字符,删除两端字符

php删除字符串末尾子字符,删除开始字符,删除两端字符

WBOY
WBOYOriginal
2016-06-06 19:49:041170Durchsuche

今天在处理删除字符串两端的特定字符时遇到了下面的问题,先看例子 $str = 'akmumu/writedb.json'; 我要做的是删除开始的akmumu,再删除末尾的.json,这样只保留有用的字符/writedb 开始我使用的ltrim删除akmumu,再使用rtrim删除.json 结果发现我理解trim错

今天在处理删除字符串两端的特定字符时遇到了下面的问题,先看例子

 
$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);
		}
	}	
}


 这样就可以了

 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn