Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyciąganie zmiennych poza function()
Forum PHP.pl > Forum > PHP
telepawel
Witam,

Czy istnieje możliwość wyciągnięcia kilku zmiennych z jednego function ?

Przykładowo posiadam kod (zapewne z błędem):

function trala(){

$a=10;
$b=5;
$c=1;

return $a;
return $b;
return $c;

}


i chcę aby zmienne a b c obowiązywały w całym skrypcie.
Mordoran
Wrzuć zmienne do tablicy, a potem ja return'em zwróć.
klocu
a nadanie im parametru globalnego?
Kod
<?php $b = 100; function zz() { global $b; $b += 100; return $b; } echo zz(); ?>
Prph
Lepsze jest rozwiazanie z tablica. Zeby kod byl jeszcze bardziej czytelny - zastosuj tablice asocjacyjna:

  1. <?php
  2. function abc()
  3. {
  4. $a = 1;
  5. $b = 2;
  6. $c = 3;
  7.  
  8. return array
  9. (
  10. 'a' => $a,
  11. 'b' => $b,
  12. 'c' => $c
  13. );
  14. }
  15. ?>
qqrq
Albo taki trochę C++ -owy sposób:

  1. <?php
  2. function abc(&$a,&$b,&$c)
  3.  {
  4.  $a=1;
  5.  $b=2;
  6.  $c=3;
  7.  }
  8.  abc($a,$b,$c);
  9.  echo $a;
  10.  echo $b;
  11.  echo $c;
  12.  // ...funkcja nic nie zwraca, ale jak ją wywołasz, to będziesz miał...
  13.  // ...zmienne $a, $b, $c z przypisanymi wartościami
  14. ?>


Mimo wszystko z tablicą (zwłaszcza asocjacyjną) jest bardziej elegancko...
telepawel
serdeczne dziękuję.

faktycznie nie pomyślałem o tablicy, minuta i po robocie. dział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.