webForumDet fria alternativet

E_STRICT

2 svar · 514 visningar · startad av itpastorn

itpastornMedlem sedan feb. 2007280 inlägg
#1

Från en annan tråd:

Hur fungerar E_STRICT? Har letat men inte hittat något svar? Vad finns det mer för skillnader på 4:an och 5:an?

Manualen säger:

Run-time notices. Enable to have PHP suggest changes to your code which will ensure the best interoperability and forward compatibility of your code.

http://se.php.net/manual/en/ref.errorfunc.php#errorfunc.constants.errorlevels.e-strict

E_STRICT varnar om du använder en operator eller en funktion som är officiellt nedvärderad och ersatt med någon bättre, och kanske inte heller kommer att finnas i framtida versioner av PHP.

Typexemplet är funktionen "is_a" som ersätts med operatorn "instanceof". http://se.php.net/manual/en/function.is-a.php

I PHP version 5.0 fick man E_STRICT på variabeldeklarationsordet "var" i klassdefinitioner, vilket var irriterande för många. Sedan 5.1.3 är "var" OK och ett alias till "public".

http://se.php.net/manual/en/language.oop5.visibility.php

Enklaste sättet att lära sig: Stöter du på ett E_STRICT fel du inte förstår så fråga!

filipbhMedlem sedan juli 2002402 inlägg
#2

Så om man inte håller på med något "avancerat" i PHP så fungerar koderna även i PHP 5 utan ändringar?

itpastornMedlem sedan feb. 2007280 inlägg
#3

För det mesta, ja. I princip den enda funktionen som ställer till problem är array_merge()

Rent procedurell kod funkar likadant. OO-kod kräver däremot omskrivningar

Läs dess varningsruta i manualen.

Genererad på 389 ms · cache AV · v20260730165559-full.f96bc7eb