problem z tablica z innego pliku

problem z tablica z innego pliku
WA
  • Rejestracja:ponad 21 lat
  • Ostatnio:ponad 12 lat
  • Postów:501
0

Mam w jednym pliku ( polish.lang ) takie cos:

Kopiuj
$lang['error'] = 'Blad';
$lang['Register'] = 'Zarejestruj sie';

W pliku ( func.php ) daje
echo($lang['error'] i dziala.

Jak daje to w funkcji to lipa ;/ Nic nie pokazuje. O co chodzi :-/

LX
  • Rejestracja:ponad 21 lat
  • Ostatnio:ponad 9 lat
0

Jeżeli dobrze rozumiem to:
W funkcji wszystkie zmienne są lokalne chyba że zadeklarujesz ją z dyrektywą "global"

Kopiuj
$name = 'Luke';

function ShowNameA()
{
  echo $name; //to nic nie pokaże $name jest lokalne
}

function ShowNameB()
{
  global $name;
  echo $name; //tu ok
}

Zobacz manual

WA
  • Rejestracja:ponad 21 lat
  • Ostatnio:ponad 12 lat
  • Postów:501
0

Fakt,do tego juz doszedlem.
Tylko teraz musze na poczatku kazdej funkcji dawac global $lang;
Nie da sie zadeklarowac tego od razu dla calego skryptu?

Adamo
  • Rejestracja:około 21 lat
  • Ostatnio:około 13 lat
0

raczej się da ale w ostateczności możesz zrobić coś w stylu funkcji w tym pliku lang

Kopiuj
function rlang($cochcesz){
  ...
  $lang['error'] = 'Blad';
  $lang['Register'] = 'Zarejestruj sie';
  ...
  return $lang[$cochcesz];

}

albo

Kopiuj
...
$lang['error'] = 'Blad';
$lang['Register'] = 'Zarejestruj sie';
...

function rlang($cochcesz){
  global $lang;
  return $lang[$cochcesz];
}

a potem wywoływać np:

Kopiuj
  echo(rlang('error'));

Dwie zasady gwarantujące sukces:
1. Nigdy nie mów nikomu wszystkiego<span style="color: white">

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.