Autor Zpráva
Petr P.
Profil *
Ahoj, v PHP mám třídu, ve třídě metodu a v metodě mám include soubor.php a v souboru proměnnou $ret kterou vracím v tom souboru return $ret. Když zavolám metodu, výsledek z proměnné $ret nedostanu. Poradí někdo? Děkuji.
Kajman
Profil
V metodě přebíráte vrácenou hodnotu nějak takto?

$hodnota =  include "soubor.php";

Cestu máte dobře? Zkuste mrknout do error logu nebo dát require místo include.
Petr P.
Profil *
Ne, mám to takto, cesta je správně, error log OK.
public function rep ( $str ) {
  require_once ( 'rep.php' ) ;
  return $ret;
}

soubor rep.php
$ret='text';
return $ret ;
Kajman
Profil
Pokud tam je _once, tak se to vložení kódu udělá maximálně při prvním volání metody rep. Pokud se soubor již dříve includoval, tak ani jednou.

Pokud je v rep.php příkaz return, tak include a require ho vrací jako návratovou hodnotu.

Zkuste

public function rep ( $str ) {
  return require ( 'rep.php' ) ;
}
Petr P.
Profil *
Kajman:
A v souboru rep.php to mám udělat jak?
Kajman
Profil
<?php
return 'text';

Ale moc se mi to použití nezdá. Patlat do metod objektů takovéto includování není běžné.
Petr P.
Profil *
OK, vyzkouším, díky. Asi je to naprosto běžné, z deseti projektů které otevřu to najdu úplně v každém.
Kcko
Profil
Petr P.:
Není to běžné.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0