Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Funkcja nie przyjmuje parametrów z zewnątrz (?)
duch4ever
post
Post #1





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 22.06.2010

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


Witam mam dziwny błąd poniżej przykład:

  1. $zmienna = 1;
  2.  
  3. function cosTam($zmienna)
  4. {
  5. return $zmienna;
  6. }
  7. echo cosTam($zmiena);


  1. $zmienna = 1;
  2.  
  3. function cosTam()
  4. {
  5. global $zmienna;
  6. return $zmienna;
  7. }
  8. echo cosTam();


  1.  
  2. function cosTam($zmienna = 1)
  3. {
  4. return $zmienna;
  5. }
  6.  
  7. echo cosTam();


Mam pewien skrypt i w nim funkcje.
Tylko w ostatnim przypadku dostaje wynik, funkcje nie przyjmują parametrów z zewnątrz.
Wiem że jak wkleję ten kod w czysty plik zadziała...

Co może powodować takie zachowanie? Wewnątrz mojego skryptu funkcje nie przyjmują parametrów z zewnątrz...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
cycofiasz
post
Post #2





Grupa: Zarejestrowani
Postów: 711
Pomógł: 127
Dołączył: 5.07.2008
Skąd: Łódź

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


Widocznie w momencie wywołania funkcji, zmienna nie istnieje / nie zawiera tego czego się spodziewasz. Daj var_dump($zmienna) nad wywołaniem funkcji
Go to the top of the page
+Quote Post
duch4ever
post
Post #3





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 22.06.2010

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


Ale nazwa zmiennej nie ma znaczenia, podstawię bezpośrednio nad funkcją dowolną zmienną z dowolną nazwą a do funkcji jej nie przekaże. Ani jako parametr ani przez global... mega dziwna sprawa.
Go to the top of the page
+Quote Post
kadlub
post
Post #4





Grupa: Zarejestrowani
Postów: 548
Pomógł: 105
Dołączył: 4.06.2010

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


return kończy działanie funkcji więc co ona ma ci robić


  1.  
  2. $zmienna=5;
  3.  
  4. function cosTam($zmienna)
  5. {
  6. $zmienna= $zmienna+2;
  7.  
  8. echo $zmienna;
  9. return;
  10. }
  11. cosTam($zmienna);
  12.  

wstaw sobie w powyższym przykładzie return przed echo i zobacz że zakończy funkcję i nie wyświetli $zmienna

Ten post edytował kadlub 8.03.2011, 18:20:30
Go to the top of the page
+Quote Post
duch4ever
post
Post #5





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 22.06.2010

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


Ja rozumiem zasadę działa funkcji i return, to nie pierwszy skrypt jaki piszę. Problem w tym że każda zmienna we wnętrzu funkcji jest pusta niezależnie jak ją tam przekaże.
Go to the top of the page
+Quote Post
cycofiasz
post
Post #6





Grupa: Zarejestrowani
Postów: 711
Pomógł: 127
Dołączył: 5.07.2008
Skąd: Łódź

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


Napiszę jeszcze raz ale w innych słowach: upewnij się że zmienna którą chcesz przekazać do funkcji zawiera wartośc której się spodziewasz.

Daj var_dump(ZMIENNA) bezpośrednio nad wywołaniem funkcji
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.12.2025 - 00:56