Rtrim в php удалить последний <br>

У меня очень странная проблема. мой скрипт вырезал последний >, и я не знаю почему.

<?php

$string = "<a href='#'>Test</a>" . "<br>";
$string = rtrim($string, "<br>");

var_dump($string);

// OUTPUT

string '<a href='#'>Test</a' (length=19)

// INSTEAD

string '<a href='#'>Test</a>' (length=20)

Мне нужно удалить ПОСЛЕДНИЙ <br> в строке (если он есть), и только если это хвост строки.

Пример:

$string = "<a>CC</a><br><a>CC</a>" //is ok
$string = "<a>CC</a><br><a>CC</a><br>" // --> <a>CC</a><br><a>CC</a>
rtrim обрабатывает свой второй аргумент не как строку, а как список символов. Таким образом, он удалит все экземпляры <, b, r и > из конца строки.
iainn 18.05.2018 15:41

Упс, тогда я всегда плохо использовал Rtrim !! :(

Giuseppe Lodi Rizzini 18.05.2018 15:43

@GiuseppeLodiRizzini Ага, да. Я поправил. Не стесняйтесь использовать мой код.

Praveen Kumar Purushothaman 18.05.2018 15:43
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
4
231
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Второй параметр - это не разделитель, а маска персонажа. Таким образом, он определенно обрежет любую струну по отдельности.

You can also specify the characters you want to strip, by means of the character_mask parameter. Simply list all characters that you want to be stripped. With .. you can specify a range of characters.

Вы должны удалить его с помощью str_replace(), если есть только один <br>:

str_replace("<br>", "", $string);

Или вам нужно использовать RegExp:

preg_replace('/<br>$/', "", $string);

Нет, у меня не только одна <br> ... у меня может быть другая внутренняя строка. Моя цель - удалить только <br> в конце строки (если есть)

Giuseppe Lodi Rizzini 18.05.2018 15:44

@GiuseppeLodiRizzini Тогда используйте версию RegExp ... Это удаляет только одну в конце.

Praveen Kumar Purushothaman 18.05.2018 15:44

Другие вопросы по теме