Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Kohana] brak zmiennych w widoku
smarter
post 3.09.2008, 19:40:43
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 5.08.2008

Ostrzeżenie: (0%)
-----


Podczas pisania kodu natrafiłem na problem, w moim odczuciu trudny.
Kod
$this->template->content = '<h1>NEWSY</h1>';

$this->news = new News_Model;
$query = $this->news->get_latest_news();

foreach($query as $item) {
    $this->template->content .= new View('news', $item );
}


W $this->template->content kompletuje sobie zawartość mojej strony którą przekazuje do widoku. Z modelu pobieram tablicę z newsami. Wygląda tak:
Kod
Mysql_Result Object
(
    [fetch_type:protected] => mysql_fetch_object
    [return_type:protected] => stdClass
    [result:protected] => Resource id #54
    [insert_id:protected] =>
    [sql:protected] => SELECT *
FROM `news`
ORDER BY `id` DESC
LIMIT 0, 10
    [current_row:protected] => 0
    [total_rows:protected] => 2
)


W $item po each mam takie coś:
Kod
stdClass Object
(
    [id] => 3
    [title] => asfsdf
    [text] => sdfsdf
)


Przekazuje to do widoku, żeby dla każdego newsa wygenerować sobie widok, jednak w widoku nie mogę używać zmiennych $id, $title, $text.
Czy ktoś wie co mogę zrobić z tym obiektem $item, żeby stał się tablicą, albo na czym polega błąd?

Rozwiązanie konkursu.
I sposób - mapowanie
Kod
$item2=array();
foreach ($item as $key=>$value) {
    $item2[$key]=$value;
}

II sposób - rzutowanie
Kod
$item = (array)$item;

III sposób - <A href="http://docs.kohanaphp.com/libraries/database/result#result_array" target="_blank">http://docs.kohanaphp.com/libraries/databa...lt#result_array
Kod
foreach( $this->query->result_array(FALSE) as $item ) {
    $this->template->content .= new View('news', $item );
}


Ten post edytował smarter 3.09.2008, 19:46:02
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Firez
post 3.09.2008, 19:41:41
Post #2





Grupa: Zarejestrowani
Postów: 17
Pomógł: 4
Dołączył: 6.03.2008

Ostrzeżenie: (0%)
-----


Cytat
żeby dla każdego newsa wygenerować sobie widok

Hmm a nie wygodniej skorzystać z pojedynczego widoku na wszystkie newsy 'otoczonego' foreachem a następnie przekazać dla tego widoku cały obiekt-rezultat querry?
Cytat
żeby stał się tablicą

http://docs.kohanaphp.com/libraries/database/result
'The first parameter is to use Objects (TRUE) or arrays (FALSE) in your result set.'
Go to the top of the page
+Quote Post
smarter
post 3.09.2008, 19:44:08
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 5.08.2008

Ostrzeżenie: (0%)
-----


Nom ;] dzięki ;]
Go to the top of the page
+Quote Post
nrm
post 4.09.2008, 09:17:45
Post #4





Grupa: Zarejestrowani
Postów: 627
Pomógł: 33
Dołączył: 1.05.2005
Skąd: Katowice

Ostrzeżenie: (0%)
-----


niesamowite jak ludzie utrudniają i komplikują proste sprawy winksmiley.jpg


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 09:54