|
|
|
| У меня 2 вопроса:
1. Класс возвращает двумерный массив с новостями
$news_list[] = array('id' => $row['id'],
'name' => $row['name'],
'body' => $row['body'],
'date' => $row['date']
);
|
Можно после этого по определённым частям массива пробежаться htmlspecialchars ?
По всем получается и только по первому ключу $news_list[0], а по всем $news_list[]['name'] не выходит.
2. Стоит ли вообще возвращать классом массив с новостями или лучше отдельно каждую часть (id, name, text, date) ? | |
|
|
|
|
автор: _гость_ (05.02.2008 в 23:17) |
|
|
для: ChieFSS
(05.02.2008 в 15:10)
| | в каком смысле "класс возвращает" ?
как если сделать так ?
$news_list = new newsclass(....);
print_($news_list);
или вызывается метод , который возвращает это ?
наверное лучше сразу внутри этого класса или метода обработать некоторые значения, если он нужен только для отдачи браузеру.
Дата и id всёравноже можно не обрабатывать.
Но с другой стороны сама реализация вывода в последствии тоже наверное требует разложения на составляющие :)
и можно сделать по всякому , главное чтобы работало , и без лишних туда сюда обработок :) | |
|
|
|
|
автор: _гость_ (05.02.2008 в 23:19) |
|
|
для: _гость_
(05.02.2008 в 23:17)
| | print_r() там | |
|
|
|
|
|
|
|
для: _гость_
(05.02.2008 в 23:19)
| | Метод класса News возвращает двумерный массив новостей.
Я просто хотел отделить обработку информации от работы с БД, а вывожу я их шаблоном в цикле. | |
|
|
|
|
автор: _гость_ (06.02.2008 в 00:05) |
|
|
для: ChieFSS
(05.02.2008 в 23:35)
| | Непонятно как это с шаблоном , но чем это отличается от вывода в цикле
как такой ?
<?
$news = $news_obj -> get_news();
for($i=0; $i<count($news); $i++)
{
$temp &= $news[$i];
print $temp["id"] . "<br>\n" . htmlspecialcars( $news[$i]["msg"] )
. "....."
// и тд
}
|
| |
|
|
|
|
|
|
|
для: _гость_
(06.02.2008 в 00:05)
| | Шаблон подгружается в самом конце если все условия выполнены. Вот сам шаблон:
<? for($count = 0; $count < $news->newsCount(); $count++): ?>
<table border=1>
<tr><td>ID:</td><td><?=$news_list[$count]['id'];?></td></tr>
<tr><td>Название:</td><td><?=$news_list[$count]['name'];?></td></tr>
<tr><td>Тело:</td><td><?=$news_list[$count]['body'];?></td></tr>
<tr><td>Дата:</td><td><?=$news_list[$count]['date'];?></td></tr>
</table>
<? endfor; ?>
|
Мне кажется очень громоздко будет или нормуль? | |
|
|
|
|
автор: _гость_ (06.02.2008 в 04:14) |
|
|
для: ChieFSS
(06.02.2008 в 00:33)
| | опятьже неизвестно какие у вас там ещё и условия выполняются в цикле :)
вообще то как всё это будет работать сильно зависит от того какого размера у вас этот массив .
оптимальнее всего делать такой запрос, который сразу выдаст только то что нужно , а не извлекать всё содержимое таблицы , а потом фильтровать при выводе.
но можно и так, если запрос возвращает не больше 8и мегабайт :) | |
|
|
|
|
|
|
|
для: ChieFSS
(06.02.2008 в 00:33)
| | Может так?
<? for($count = 0; $count < $news->newsCount(); $count++): ?>
<table border=1>
<tr><td>ID:</td><td><?=$news_list[$count]['id'];?></td></tr>
<tr><td>Название:</td><td><?=htmlspecialchars($news_list[$count]['name']);?></td></tr>
<tr><td>Тело:</td><td><?=$news_list[$count]['body'];?></td></tr>
<tr><td>Дата:</td><td><?=$news_list[$count]['date'];?></td></tr>
</table>
<? endfor; ?>
|
| |
|
|
|