![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 7.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
Jeden prosty przykład masz już wyżej. Spróbuj w nim zmienić "return" na "echo" i zobaczysz, że przestanie działać. Ogólnie przypomnij sobie funkcje matematyczne, np. sin(), bo ogólna zasada jest podobna. Do funkcji podajesz jakieś argumenty, a one obliczają Ci wynik, z którym możesz coś później zrobić, np. użyć w jakimś wzorze. Zauważ, że wynik funkcji matematycznej zależy wyłącznie od podanych jej argumentów. Jest to bardzo ważna cecha - ogólnie takie funkcje (zwane "czystymi", jak kogoś to interesuje) są najlepsze i bardzo pożądane. Zatem zapiszmy sobie takiego sinusa:
Kod $a + $b + sin($c) Widzisz? Mogę wykonać to obliczenie, bo sin() obliczoną wartość zwraca. Ale napiszemy sobie teraz inny wariant tej funkcji: Kod function sin_alt($x) { // tutaj obliczenia matematyczne echo $wynikObliczen; } // end sin_alt(); I nagle przestaje być wesoło: Kod $a + $b + sin_alt($c) Takie wyrażenie już nam nie zadziała, bo Twoja funkcja zamiast zwrócić ten wynik, by mógł się nim zająć operator dodawania, wysłała go do przeglądarki. Twój sin_alt() nie zwraca teraz żadnej wartości, więc powyższe wyrażenie przestaje być poprawne. Kiedy co stosować? Pierwsze - prawie nigdy, drugie - prawie zawsze. W swoich aplikacjach echo mam tylko w kodzie generującym wynikowy HTML i ten kod prawie w ogóle nie korzysta z funkcji. Cała reszta aplikacji zwraca wyniki przez return. Ten post edytował Zyx 11.10.2010, 14:51:02 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 21:43 |