Список с запятыми в PHP и MySql
на странице PHP
у меня есть простой запрос MySQL
. Конечным результатом является список.
часть, которая генерирует результат
while($row = mysqli_fetch_array($result)) {
echo "<a href='".$row['url']."'>".$row['Name']."</a>, ";
}
это генерирует что-то вроде этого:
Abc123, Def456, Ghi789,
но я не хочу, чтобы эта последняя запятая:
Abc123, Def456, Ghi789
Как я могу изменить PHP
для достижения этой цели?
3
2 answers
Одним из возможных решений было бы сохранить результаты в строке и перед записью ее на экране с помощью echo
удалить последнюю запятую, используя rtrim
или trim
(потому что вы можете передать им маску, указав строку ", "):
$resultado = "";
while($row = mysqli_fetch_array($result)) {
$resultado .= "<a href='".$row['url']."'>".$row['Name']."</a>, ";
}
echo rtrim($resultado, ", ");
Другим возможным решением было бы сохранить текст (без запятой) в массиве, а затем сделатьimplode
соединение с запятой:
$cadenas = array();
while($row = mysqli_fetch_array($result)) {
array_push($cadenas, "<a href='".$row['url']."'>".$row['Name']."</a>");
}
echo implode(", ", $cadenas);
2
Author: Alvaro Montoro, 2016-04-26 13:57:43
Вы можете использовать функцию substr()
PHP:
$myString = substr($myString, 0, -1);
Удалит последний символ из строки.
0
Author: Fen Dev, 2016-04-26 15:42:17