![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 101 Pomógł: 7 Dołączył: 16.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam - montowałem sobie ostatnio system od nowa, więc tworząc swój lokalny serwer www użyłem nowych wersji php, mysql itd.....
Podczas sprawdzania działania środowiska, na wszystkich projektach, które miałem gotowe i które działały na wcześniejszym php 5.2 bez problemu pojawiły się nowe komunikaty i ostrzeżenia wynikające jak się domyślam z różnic pomiędzy php wersją 5.2 a 5.3. Ze wszystkimi sobie poradziłem z wyjątkiem jednego, który zasiewa mi w ogromnych ilościach ekran:P Strict Standards: Only variables should be passed by reference in C:\WAMP\htdocs\akwarium\cms\public\core on line 7 Fragment kodu generujący komunikat to:
Jest to tablica danych pliku strony, ponieważ używam osobnych plików do podstron w połączeniu z przyjaznymi url'ami uzyskanymi z PATH_INFO. Komunikat dotyczy: reset(explode('.', basename(__FILE__))) Zauważyłem, że wszystkie pozostałe wystąpienia ostrzeżenia wiążą się także z użyciem funkcji reset lub end w połączeniu z innymi wbudowanymi funkcjami php. I teraz nie wiem czy takie łączenie funkcji jest błędem, czy da jakoś zapobiec temu komunikatowi, bo nie za bardzo chce mi się zmieniać to we wszystkich całym kodzie, a pisałem używając takiej konstrukcji z racji tego, iż wydawała mi się ona "estetyczna" ... |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 300 Pomógł: 32 Dołączył: 31.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
pojawiły się nowe komunikaty i ostrzeżenia wynikające jak się domyślam z różnic pomiędzy php wersją 5.2 a 5.3. Nie, już w php 5.2 występowało to strzeżenie. Strict Standards: Only variables should be passed by reference in C:\WAMP\htdocs\akwarium\cms\public\core on line 7 Zauważyłem, że wszystkie pozostałe wystąpienia ostrzeżenia wiążą się także z użyciem funkcji reset lub end w połączeniu z innymi wbudowanymi funkcjami php. Tak samo jest przy np. empty(), argumentem musi być zmienna a nie wynik działania innej funkcji, jeśli chcesz się pozbyć ostrzeżenia będziesz musiał przerobić kod. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Po co chcesz zresetować wskaźnik tablicy, której jest domyślnie na początku?
A wyskakujący błąd jest oczywisty. Funkcje te operują na konkretnej zmiennej, a nie zwracają zmodyfikowaną wartość. Używając tych funkcji na wyrażeniu zamiast na zmiennych, w tym konkretnym przypadku robisz to bez sensu. ![]() -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 09:16 |