Удалить текст из строки - PullRequest
       1

Удалить текст из строки

2 голосов
/ 06 сентября 2011

http://site.com/js/script.js?ver=1.0

Как удалить аргументы запроса из строки, подобной этой?

(?ver=1.0)

Ответы [ 4 ]

4 голосов
/ 06 сентября 2011

Удалить все после (и включая) первый ? символ:

$str = 'http://site.com/js/script.js?ver=1.0';
$str = substr($str, 0, strpos($str, '?'));
2 голосов
/ 06 сентября 2011
$string = str_replace('?ver=1.0', '', $string);

Или, если этот пример представляет собой только список дополнительных значений запроса, вы можете взорваться на вопросительном знаке, и ваш первый результирующий ключ массива будет желаемой строкой.

$array = explode('?', $string);
echo $array[0]; // http://site.com/js/script.js
1 голос
/ 06 сентября 2011

Если вам нужно сделать это для других, более длинных или, возможно, неизвестных строк запроса, выберите один из следующих методов:

$substr = substr($string, 0, strpos($string, '?'));

$regex = preg_replace('/\?(.*)/', '', $string);

$array = explode('?', $string);
$str = current($array);
1 голос
/ 06 сентября 2011

Чтобы удалить знак вопроса и все после него:

$string = 'http://site.com/js/script.js?ver=1.0';

$string = array_shift( explode('?', $string) );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...