![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 18.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Po wywołaniu tego kodu wyrzuca mi błąd : Fatal error: Default value for parameters with a class type hint can only be NULL in C:\wamp\www\bigos\tbl\tbl.php on line 2. Mogłby mi ktoś powiedzieć co tu jest źle ??Pomijając to ze w ogole tego kodu nie rozumiem, ponieważ jest on z nowego tematu który właśnie zacząłem. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
PHP nie obsługuje TypeHintingu dla typów prymitywnych (string, int). Jedynie klasy i tablice są obsługiwane.
W chwili obecnej Twoje zapisy string $msg = null i int $code = 0 interpreter traktuje jako argument $msg, który ma być obiektem klasy "string", a nie stringiem. Analogicznie jest z argumentem $code. W przypadku gdy korzystasz z TypeHintingu jedyną dozwoloną wartością domyślną jest null (bądź pusta tablica, w przypadku gdy deklarujesz argument jako tablicę). Ty natomiast dla drugiego argumentu podajesz 0. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 97 Pomógł: 15 Dołączył: 12.08.2012 Skąd: Zabrze Ostrzeżenie: (10%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 18.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
czyli kod który zamieściłem działa tylko na starej wersji php wiec na dana chwile jest bezużyteczny ?Czy da się go jakoś przerobić?
Ten post edytował bigos1995-95 31.08.2012, 10:01:15 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Da się przerobić:
function __construct($message=NULL, $code=0) { ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 18.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Fatal error: Cannot redeclare class Exception in C:\wamp\www\bigos\tbl\tbl.php on line 1
Ok, zrozumiałem to ze stringami i intami i zmieniłem drugą linijkę kodu ale oczywiście mam następny błąd;/ Fatal error: Cannot redeclare class Exception in C:\wamp\www\bigos\tbl\tbl.php on line 1 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Przecież klasa Exception jest klasą PHP. Nie możesz stworzyć drugiej klasy o tej samej nazwie. Komunikat błędu daje ci to jasno do zrozumienia.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 18.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Okej, działa nie wiedziałem ze klasa Exception jest klasa php ale juz jest git. Dzieki
![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 21:20 |