удалить перед определенной строкой, а не символом - PullRequest
0 голосов
/ 22 января 2019

Формат string следующий

$img = "/images/posts/main.jpg";
$img1 = "/images/posts/john.jpg";

Мне нужно удалить /images/posts/ и повторить оставшуюся часть содержимого.

Я пытался с strstr, но я нашел, что он имеет дело только с символом

echo strstr($img, '/images/posts/')
//output => /images/posts/main.jpg

если я использую только один символ echo strstr($img, '/'), тогда вывод images/posts/.

Поэтому я использую substr с strstr, чтобы получить ожидаемый результат.

echo substr(strstr($img, '/'), 14);
//output => main.jpg

В моем случае я уверен, что он будет работать постоянно с одним и тем же результатом, потому что деталь images/posts/ остается неизменной и не изменится.

Но действительно ли это хороший или быстрый способ подсчета и обрезки? Любой другой быстрый способ сократить /images/posts/ сразу?

Или заменить? это быстрее ??

echo str_replace('/images/posts/','',$img);

1 Ответ

0 голосов
/ 22 января 2019

Вы можете сделать это ..

Синтаксис-

 str_replace(find, replace, string, count) 

Для Eg-

str_replace('/images/posts/', '', '/images/posts/main.jpg');

напечатает main.jpg

...