![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 24.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Jak w funkcji rekurencyjnej przekazywać wynik przez referencje? Cały czas dostaje ostrzeżenie: Call-time pass-by-reference has been deprecated
Mam funkcje rekurencyjną, która pobiera zmienną z tablicą i w odpowiendi sposób tworzy zagnieżdżoną listę html. Czyli dodaje gnieniegdzie <ul>, <li>, <a> i tego typu teksty. Jeśli w funkcji jest echo to wszystko wyświetla się bez przeszkód. No ale ja chciałbym z tego echo zrezygnować i cały wynik zwrócić jako zmienną i dlatego dodałem referencje. Jak można to poprawić ![]() Funckja wygląda jakoś tak: function ff( $z1, $z2, $z3, &$wynik = '' ) { $wynik = $wynik . '<ul>'; /*jakiś kod*/ ff( $z1, $z2, $z3, &$wynik ); $wynik = $wynik . '</ul>'; return $wynik; } Czemu to nie chce dobrze działać? A może jest jakiś inny sposób na uniknięcie echo w środku funkcji? pozdro |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Nie możesz robić tak:
To argumenty funkcji określą czy to będzie referencja. ![]() Poza tym zobacz co ta funkcja robi: Funkcja ff Start Uruchom ff Stop I tak w nieskończoność. Ten post edytował fifi209 23.02.2010, 00:22:42 -------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 24.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
fifi209 problem w tym, że ta funkcja ma zamieniać drzewko sql na listę.
Jeśli nie daje w wywołaniu funkcji referencji do wyniku, to przy przechodzeniu przez kolejne gałęzie drzewka tracę wynik. Mas jakiś pomysł jak to obejść?, tak aby dodawać tagi hmtl do jakiegoś łańcucha a nie od razu je wyświetlać? pozdro |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Coś takiego:
? -------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 316 Pomógł: 36 Dołączył: 2.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
No ale toć przecież jak to string ma być ta zmienna wynikowa, to czemu nie możesz po prostu łączyć za pomocą kropki? O tak: .
![]() |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 24.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
wystarczyło wstawić: $wynik = ff( $z1, $z2, $z3, $wynik );
dzięki |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 16.07.2025 - 03:00 |