|
|
|
| Здравствуйте.
Столкнулся с небольшой проблемкой.
Вот имеется такой код
<?php
$sql_text = mysql_query("SELECT * FROM text");
while($text = mysql_fetch_assoc($sql_text))
{
echo $text['text'].', ';
}
?>
|
Как тут сделать, чтобы в последнем слове вывода, вместо запятой была точка? | |
|
|
|
|
|
|
|
для: adscom
(06.08.2010 в 02:55)
| | Надо либо при проходе цикла сравнивать итерацию его с положением внутреннего указателя запроса, и в зависимости от результата разделять/завершать строку, либо получить массив записей и объеденить его функцией implode, и завершив строку точкой:
<?
//сравнивая положение указателя
$sql_text = mysql_query("SELECT * FROM text");
for($i = 0; $i<mysql_num_rows($sql_text); $i++) {
$row = mysql_fetch_assoc($sql_text);
echo $row['text'] . @(mysql_data_seek($sql_text, $i+1) ? ", " : ".");
//можно просто проверять итерацию цикла с количеством результрующих строк
}
//объеденение массива
$arr = array();
while($text = mysql_fetch_assoc($sql_text)) $arr[] = $text['text'];
echo implode(', ', $arr) . '.';
|
Интересно, в задаче вы выводите только $row['text'], то есть используете одно поле запроса, тогда зачем вы запросом получаете все поля? | |
|
|
|