Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] zapis wyniku funkcji do zmiennej
endr1u
post 10.02.2009, 10:34:27
Post #1





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 22.03.2008
Skąd: Janów Lubelski

Ostrzeżenie: (0%)
-----


Witam, mam pytanie czy da sie zapisac wynik funkcji do zmiennej, powiedzmy ze mam taki kod :
Kod
function ala()
{
echo "mam na imie ala";
}

nastepnie chce zapisac wynik funkcji do zmiennej
Kod
$zmienna = ala();

i teraz nie wiem dlaczego gdy wchodze w localhost'a to wychodzi mi wynik funkcji chociaz nawet jej nie wywolalem wczesniej poleceniem
Kod
echo $zmienna;
Go to the top of the page
+Quote Post
MiFlo
post 10.02.2009, 10:39:52
Post #2





Grupa: Zarejestrowani
Postów: 92
Pomógł: 4
Dołączył: 12.09.2006
Skąd: 127.0.0.1

Ostrzeżenie: (0%)
-----


oczywiscie
  1. <?php
  2. function ala()
  3. {
  4. return "mam na imie ala";
  5. }
  6. $zmienna = ala();
  7. ?>

Polecam jakiś kurs smile.gif
Go to the top of the page
+Quote Post
djstrong
post 10.02.2009, 10:40:05
Post #3





Grupa: Zarejestrowani
Postów: 65
Pomógł: 9
Dołączył: 22.09.2006

Ostrzeżenie: (0%)
-----


Wywołałeś przecież tu:
  1. <?php
  2. $zmienna = ala();
  3. ?>


Aby funkcja coś zwracała trzeba w niej umieścić return i co ma zwrócić, np.:
  1. <?php
  2. return 'ala ma kota';
  3. ?>
Go to the top of the page
+Quote Post
endr1u
post 10.02.2009, 11:02:07
Post #4





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 22.03.2008
Skąd: Janów Lubelski

Ostrzeżenie: (0%)
-----


Cytat(djstrong @ 10.02.2009, 10:40:05 ) *
Wywołałeś przecież tu:
  1. <?php
  2. $zmienna = ala();
  3. ?>


Aby funkcja coś zwracała trzeba w niej umieścić return i co ma zwrócić, np.:
  1. <?php
  2. return 'ala ma kota';
  3. ?>


wiem ze wywolalem ale zapisalem ja do zmiennej a zmiennej nie wypisalem na ekran.. a mimo to pojawila sie na ekranie o to mi chodzi.
Gdy naprzyklad zapisuje cos do zmiennej $xyz = 50; to wtedy aby wyswietlic wynik musze zrobic echo $xyz; a jak robie tak z funkcja $zmienna = funkcja(); wtedy odrazu mi sie wyswietla wynik funkcji mimo tego, ze nie wywolalem zmiennej. czy to normalne?
Go to the top of the page
+Quote Post
phpion
post 10.02.2009, 11:07:43
Post #5





Grupa: Moderatorzy
Postów: 6 070
Pomógł: 860
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(endr1u @ 10.02.2009, 13:02:07 ) *
czy to normalne?

Tak, to normalne. W przypadku Twojego pierwszego posta w zmiennej $zmienna nie masz "mam na imie ala" tylko wartość NULL.
  1. <?php
  2. function ala() {
  3.    echo "mam na imie ala";
  4. }
  5.  
  6. $zmienna = ala();
  7.  
  8. var_dump($zmienna);
  9. ?>

Dlaczego? Bo nic nie zwracasz. Tak jak pisali poprzednicy - użyj return aby zwrócić wartość do zmiennej.
  1. <?php
  2. function ala() {
  3.    return "mam na imie ala";
  4. }
  5.  
  6. $zmienna = ala();
  7.  
  8. var_dump($zmienna);
  9. ?>
Go to the top of the page
+Quote Post
nospor
post 10.02.2009, 11:08:49
Post #6





Grupa: Moderatorzy
Postów: 36 455
Pomógł: 6292
Dołączył: 27.12.2004




Cytat
to wtedy aby wyswietlic wynik musze zrobic echo $xyz
blinksmiley.gif
No przeciez w funkcji tez robisz echo!

Cytat
function ala()
{
echo "mam na imie ala";
}

echo wywala na ekran nie zaleznie czy to funkcja czy nie. Podano ci juz w poprzednich postach jak masz zrobic


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
em1X
post 10.02.2009, 11:47:05
Post #7





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

Ostrzeżenie: (0%)
-----


  1. <?php
  2. function ala() {
  3. print 'ala ma kota';
  4. }
  5.  
  6. ala();
  7. $content = ob_get_flush();
  8.  
  9. print $content;
  10. ?>


--------------------
eh, co polska wódka to polska wódka
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 24.04.2024 - 10:17