>백엔드 개발 >PHP 튜토리얼 >怎样清除指定字符前的所有字符串?

怎样清除指定字符前的所有字符串?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-23 14:23:141889검색

字符串如下,我想清除vid=及之前的字符,也就是只保留198445623。这其中只有vid=是固定的字符。
http://ooioosy.wwowo9e.com/owuiwd/vid=198445623

我现在的方法是这样的,通过计算vid=的位置来清除,有没有更节省系统资源的方法?
$vid = "http://ooioosy.wwowo9e.com/owuiwd/vid=198445623"
substr($vid,(stripos($vid,'vid=')+4));


回复讨论(解决方案)

其实你的也很省资源了
试试这个

$vid = "http://ooioosy.wwowo9e.com/owuiwd/vid=198445623";echo explode('vid=', $vid)[1];

<?php$vid = "http://ooioosy.wwowo9e.com/owuiwd/vid=198445623";str_replace('http://ooioosy.wwowo9e.com/owuiwd/vid=','',$vid );?>

本来想用正则,不过正则浪费资源

<?php$vid = "http://ooioosy.wwowo9e.com/owuiwd/vid=198445623";str_replace('http://ooioosy.wwowo9e.com/owuiwd/vid=','',$vid );?>

本来想用正则,不过正则浪费资源
LZ写得很明白??“这其中只有vid=是固定的字符”

直接用=分割成数组,取第一个元素不就可以了

我觉得你的已经很省了!

$str = 'http://ooioosy.wwowo9e.com/owuiwd/vid=198445623';	$arr = explode('=',$str);	echo $arr[1];

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.