Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Return i include
Forum PHP.pl > Forum > Przedszkole
sajborg
Witam chcem zrobic tak ze mam plik gówny w inm includuje do zmiennej plik i chcem zeby ten plik został wywołany i wynik przypisany do zmiennej. Zrobilem tak jak w manualu czyli

pakiety.php
  1. <?
  2. ..................
  3. $templates->parse();
  4. $templates->show_result('yes');
  5. return $templates->dane; /// To z manuala
  6. ?>


index.php

  1. <?
  2. $pakiety=include 'include/pakiety.php';
  3. ?>


I Teoretycznie nie powinno wyswietlac zawatrosci pakiety.php ale wyswietyla nie wiem dlaczego chcem zeby kod który jest w pakiety.php został wywołany i jego wynik przypisany do zmiennej $pakiety w pliku index.php
Kuziu
to robisz tak
plik funkcja.php
  1. <?php
  2.  
  3. function moja_funkcja()
  4. {
  5. return 5;
  6. }
  7.  
  8. ?>

Plik inkludujący...
  1. <?php
  2.  
  3. include &#092;"funkcja.php\";
  4. $wynik = moja_funkcja();
  5. echo ($wynik);
  6. ?>


Funkcja include dolacza tylko kod innego pliku ... a funkcję wywołujesz standardowo ..
sajborg
Jak bym chcial tak zrobic to bym zrobił. Takie rozwiazanie mnie nie urządza. Nie chcem includowac kazdego pliku chcem includowac to co mi potrzebne w danej chwili. Dlatego chcem kod który powstanie po wywołaniu includowanego pliku wrzucic do zmiennej.
dr_bonzo
1. include (i require) nie jest funkcja
2. i nie zwraca zadnej wartosci
czyli jesli zaincludujesz plik to ci go wykona w tym miejscu, w ktorym go zaincludowales i nic poza tym.
EDIT
2.
Cytat
inclue może zwrócić wartość jeżeli plik includowany ma return
nospor
On ci wyświetla wynik bo może ta funkcja $templates->show_result('yes'); powoduje wyświetlenie wyniku przez chociażby jakieś echo.

dr_bonzo: mylisz się. inclue może zwrócić wartość jeżeli plik includowany ma return
wiem bo sam tej metody używam
dr_bonzo
Cytat
dr_bonzo: mylisz się. inclue może zwrócić wartość jeżeli plik includowany ma return

Zgadza sie -- nie sprawdzalem nigdy.
sajborg
Nie jesli funkcja ma parametr yes to nie wyswiwtla ale dodaje dane do zmiennej dane w klasie i odczytuje ja wlasnie return

  1. <?php
  2. function show_result($dane=&#092;"no\")
  3. {
  4. if ($dane==&#092;"no\")
  5.  {
  6.  foreach($this->parsed as $parsed)
  7. {
  8.  echo $parsed;
  9. }
  10.  }elseif ($dane==&#092;"yes\")
  11.  {
  12. foreach($this->parsed as $parsed)
  13. {
  14.  $this->dane.=$parsed;
  15. }
  16.  }
  17. }
  18. ?>


Wiec w tym wypasku nie wyswietla tylko daje return. I nie powinno wyswitalc wyniku a wyswitla jesli includuje sad.gif

  1. <?php
  2. $templates->show_result('yes');
  3. return $templates->dane;
  4. ?>
hwao
php -> php pocz
Guest
To faktycznie zagwostka. Masz rację, nie powinien wyświetlać. Dziwne. A może funkcja $templates->parse(); coś wyświetla?
Kuziu
paweb - Owiele bardziej opłaca się załadować 1 duży plik z wieloma funkcjami i je wykonywać ... niż co chwile includowac plik z 1 funkcją ...
sajborg
Wiem jak by strona była statyczna a tu chodzi o to ze jest szablon i do niego za wrzucane jakies dane z pliku w tym wypadku z pliku pakiety.php
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.