group_concat: отображать значения в новой строке браузера
У меня есть простой запрос, который я использую функцию GROUP_CONCAT() MYSQL:
SELECT `ProductID` , GROUP_CONCAT( Description
SEPARATOR "\n" ) AS description
FROM Features
GROUP BY `ProductID`
Приведенный выше запрос прекрасно работает в интерфейсе phpmyadmin, т.е. возвращаемые значения отображаются в новой строке, как показано ниже:
Однако, когда я запускаю запрос в браузере, значения разделяются пробелом, а не в новой строке, как хотелось бы:
Я должен отметить, что я даже пытался использовать теги BR в качестве разделителя (GROUP_CONCAT( Features.Description SEPARATOR "<br>" ))
но все еще не отображает значения в новой строке.
Любая помощь будет высоко оценена
1 ответ
Это то, что вы хотите сделать в PHP, а не в MySQL. Это позволит ему правильно отображаться как для html (браузер), так и для не html рендеров (cli). Причина, по которой это работает в phpMyAdmin, заключается в том, что он использует nl2br для преобразования новых строк (\n
) в HTML разрывы (<br>
).
Пример:
echo nl2br($row['description'];
Ваш код может отличаться, это просто предполагает, что $row это отдельная строка из результатов.