Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 14380|Svar: 1

[Hjemmeside O&M] Efter at have kørt X3.2, viser PHP-logen: PHP Strict Standards

[Kopier link]
Opslået på 27/04/2016 11.01.37 | | |

Operativsystem: win2008 R2
PHP-version: v5.4.32
MySQL-version: 5.5.39 Aktiver wincache og memcache

Følgende logfiler gentages hver dag på et uregelmæssigt tidspunkt:
----------------------------------------------------------------------

PHP strenge standarder: Deklaration af table_forum_post::update() bør være kompatibel med discuz_table::update($val, $data, $unbuffered = false, $low_priority = false) i bbs\source\ klasse class_core.php\ på linje 113

PHP strenge standarder: Deklaration af table_forum_post::d elete() skal være kompatibel med discuz_table::d elete($val, $unbuffered = false) i bbs\source\class class_core.php\ på linje 113

PHP strenge standarder: Deklaration af table_forum_post::insert() bør være kompatibel med discuz_table::insert($data, $return_insert_id = false, $replace = false, $silent = false) i BBS\Kilde\klasse class_core.php\ på linje 113

PHP strenge standarder: Deklaration af table_forum_post::fetch() skal være kompatibel med discuz_table::fetch($id, $force_from_db = false) i bbs\source\class\class_core.php på linje 113

PHP strenge standarder: Deklaration af table_forum_post::fetch_all() skal være kompatibel med discuz_table::fetch_all($ids, $force_from_db = false) i bbs\source\class class_core.php\ På linje 113

PHP Strict Standards: Deklaration af table_forum_post::update_cache() bør være kompatibel med discuz_table::update_cache($id, $data, $cache_ttl = NULL, $pre_cache_key = NULL) i bbs\ kilde\klasse class_core.php\ på linje 113

Dette skyldes PHP version 5.3. Kræver, at arveklassen skal defineres efter forældreklassen. Ellers vil der være strenge standarder: PHP strenge standarder: Erklæring af .... bør være kompatibel med den af .... Fejlprompt. Det vil sige, at forældreklassen skal komme først, og den arvede klasse skal komme senere. Den første sætning i bbs\source\class\class_core.php kan ændres: error_reporting(E_ALL & ~(E_STRICT |). E_NOTICE)); Prøv



Når du kører PHP-software, hvis du støder på en lignende fejl, "Strict Standards", er det ikke en fejl, men PHP 5.3 er ikke særlig kompatibel med tidligere versioner. Versioner efter 5.3 kræver en erklæring før brug.
Modifikation php.ini kan løse problemet, men faktisk vises denne undtagelse ikke:

Original php.ini
error_reporting = E_ALL | E_STRICT

Modificeret til
error_reporting = E_ALL & ~E_NOTICE





Tidligere:Rettede en fejl i RSS-output efter Discuz X3.2-opgraderingen
Næste:asp.net Henter de parametre, der sendes til baggrunden i jquery-datatabeller
Opslået på 17/12/2016 09.46.32 |
Funktionen error_reporting() angiver, hvilken fejl der skal rapporteres. Denne funktion fastsætter fejlrapporteringsniveauet for det aktuelle script. Funktionen returnerer det gamle fejlrapporteringsniveau.
Det første, man skal vide, er, at funktionen error_reporting() bruges til at sætte fejlniveauet og returnere det aktuelle niveau. Den har 14 fejlniveauer, som følger:

1 E_ERROR Fatal runtime-fejl. Fejlen kan ikke gendannes. Udførelsen af manuskriptet suspenderes
2 E_WARNING Ikke-dødelige runtime-fejl. Udførelsen af manuskriptet stopper ikke
4 E_PARSE Fejl i parsing ved kompileringstidspunktet. Parsingfejl bør kun genereres af analysatoren
8 E_NOTICE Notifikationer for åbningstider.
16 E_CORE_ERROR Fatal fejl ved PHP-opstart. Det er som en E_ERROR i PHP-kernen
32 E_CORE_WARNING Ikke-dødelig fejl ved PHP-opstart. Dette er som en advarsel E_WARNING i PHP-kernen
64 E_COMPILE_ERROR Fatal kompileringstidsfejl. Det er som at generere en E_ERROR med Zends scripting-motor
128 E_COMPILE_WARNING Ikke-fatal kompileringstidsfejl med en E_WARNING-advarsel genereret af Zend-scriptmotoren
256 E_USER_ERROR fatale brugergenererede fejl.
512 E_USER_WARNING Ikke-dødelige brugergenererede advarsler.
1024 E_USER_NOTICE Brugergenererede notifikationer.
2048 E_STRICT Meddelelse om kørselstid.
4096 E_RECOVERABLE_ERROR Fang en fatal fejl.
8191 E_ALL alle fejl og advarsler.


Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com