Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: $objWidget = new Show ($i); ?
Forum PHP.pl > Forum > Przedszkole
Gość_Rafał
witam

mam sobie obiekt o nazwie Show i chce go wywołać robie to tak

  1. <?php
  2. $objWidget = new Show ($i);
  3. ?>


i działa. Ale jak zrobić zeby wynik przypisać do zmiennej

bo jak daje
  1. <?php
  2. echo &#092;"$objWidget \"; 
  3. ?>
mam napis Object a chce miec wynik .. może ktoś coś poradzi
crash
Co ty chcesz wyechować skoro to obiekt? Użyj var_dump" title="Zobacz w manualu PHP" target="_manual
SongoQ
Cytat
mam sobie obiekt o nazwie Show i chce go wywołać robie to tak

Nie ma czegos takiego jak wywolanie obiektu, wywolac mozesz metode a obiekt sie tworzy.

Cytat
Ale jak zrobić zeby wynik przypisać do zmiennej

Nie ma czegos takiego jak wynik obiektu, mozesz przypisac wynik metody lub wartosc wlasciwosci.
ebe
No przecież wynik przypisujesz do zmiennej i jest to zmienna $objWidget, która jest OBIEKTEM. I teraz jeśli używasz php5 możesz dodać do klasy tego obiektu metodę __toString() i dzięki temu możesz wyprintować obiekt print $objWidget, uwaga metoda jest używana tylko w celach debugowania itp. Jeśli chcesz wypisać zawartość jakiegoś obiektu możesz zrobić to tworząc metodę która poda porządane dane.
Gość_Rafał
ok to jak zrobic zeby wynik tego obiektu bylo mozna umiesci w szablonie smart

  1. <?php
  2. $smarty->assign('lista',$objWidget = new Show ($i));
  3. ?>


i nie dziala a ja chce zeby w szablonie tam gdzie bede mial {$lista} byl wynik ..
SongoQ
Zanim zaczniesz cos obiektowo robic radze poczytac o klasach.
ebe
  1. <?php
  2.  
  3. $objWidget = new Show ($i);
  4.  
  5. $smarty->assign('lista',$objWidget->zwrocCos() );
  6.  
  7.  
  8. ?>


zwrocCos() jest metodą która zwraca to co chcesz umieścić w smarkach.
Gość_rafal
no prawie ...

mam taki przykladowy kod

  1. <?php
  2. class show 
  3. {
  4. function mark($ile) {
  5.  
  6. $ilea = 4 + $ile;
  7. echo &#092;"Wynik oceny $ilea\"; // to chce w szablonie smaty wyswetlic
  8. }
  9. }
  10. ?>


tak to umieszczam w szablonie ..

  1. <?php
  2.  
  3. $objWidget = new Show ();
  4. $smarty->assign('LisShop',$objWidget->mark('3'));
  5.  
  6.  
  7. ?>


ale w miejscu gdzie ma sie wyswetlic nie ma nic
zato na samym początku strony to sie wyswetla
dr_bonzo
To sa podstawy -- jesli funkcja/metoda nic nie zwraca to nie mozesz tego przypisac jakiejs zmiennej (lub przypisze ci null)

  1. <?php
  2. class show 
  3. {
  4.  function mark($ile) {
  5.  
  6. $ilea = 4 + $ile;
  7. return $ilea; // to chce w szablonie smaty wyswetlic
  8. }
  9. }
  10. ?>


a w smartym dodajesz "Wynik oceny " -- po to sa te szablony.
$smarty->assign( 'costam', $instancja_klasy_show->mark( $x ) );
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.