Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zmienne ($$)... porady
Forum PHP.pl > Forum > PHP
MP1
  1. <?php
  2.  
  3. function db_read($co,$t,$v,$a,$id) {
  4. //KOD WYCITY
  5.  ${$a} = mysql_fetch_row($result); echo $$a;
  6. }
  7.  
  8. ?>

Zmienne wywołuję funkcją ECHO() w funkcji.

Jeśli wywołam $$a, $dinfo (bo taką ma nazwę) - wyświetli się "Array".

Jeśli wywołam $$a[0], $dinfo[0] - nic się nie wyświetla.

Stosowanie $$ ułatwiłoby mi pewne operacje, dlatego pytam, w jaki sposób poprawnie tutaj (funkcja mysql_fetch_row()) można zapisać to jako tablicę.

$a zawiera "dinfo".
db_read - funkcja odczytująca dane z SQLa...
czachor
Kod
${$a}[0];
?
Nex
Przypisz ta tablice nowej zmiennej
Heh, rozwiazanie jest proste... moze troche prymitywne i moze na około, ale nie znam innego, a przy tym skutecznego.
Poniżej przykład:
  1. <?php
  2.  $dinfo[0] = &#092;"fajowy tekst\";
  3.  $a=&#092;"dinfo\";
  4.  $c = $$a;
  5.  print($c[0]);
  6. ?>
MP1
Cofam... nie pomogło do końca, rozwijam problem.

  1. <?php
  2. function Funkcja($a) {
  3. [zmienna]=mysql_fetch_row(...); //Co wpisać w [zmienna]?
  4. }
  5. ?>


Funkcja zwraca poprawnie już zapełnioną tablicę. Jeśli nazwą zmiennej będzie $GLOBALS[$a], a $a w argumencie będzie stringiem "$test[0]" (czyli tablica), to nic z tego... Samo "$test" spokojnie zadziała.
Jak to można najlepiej zrobić, by funkcja zwracała globalną tablicę podaną w $a?
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.