RekenaarsLêertipes

Uitvoer van foute in PHP

Maak nie saak hoe netjies en oplet die webprogrammeerder was nie, daar kan foute en onakkuraathede wees tydens sy werk. As gevolg hiervan kan dit lei tot die mislukking van die webwerf of diens. Vir ontfouting tydens projekontwikkeling is dit moontlik om foutuitset in PHP in te sluit.

Hoe werk dit?

PHP reageer beslis op hierdie of daardie skrifkode. In sommige gevalle - die uitvoering van die nodige aksie, in ander - vertoon 'n fout. Hierdie meganisme help die ontwikkelaar ten tye van die implementering van die kode afdeling om die tekortkominge vinnig te herstel.

Die uitset van foute in PHP is egter nie altyd nodig nie. Nadat die ontwikkeling van die projek voltooi is, is hierdie funksie gedeaktiveer om te voorkom dat hacking of ongemagtigde toegang verkry word.

aanpassing

Vir die volledige konfigurasie van die PHP-tolk, reageer die php.ini-lêer. Dit het 'n error_reporting-richtlijn, wat net die uitset van foute in PHP definieer. Alhoewel dit uitsonderingshantering insluit, reageer display_errors om dit in die blaaier venster te vertoon. As dit gedeaktiveer is, vertoon die stelsel 'n leë bladsy in plaas van 'n fout.

Klassifikasie van uitsonderings

Die uitset van foute in PHP kan voorwaardelik verdeel word in verskeie kategorieë:

  • Foute, as gevolg waarvan die skrif sal ophou werk. Die sogenaamde, dodelike. Dit sluit in E_ERROR, E_COMPILE_ERROR;

  • Foute wat uitgeskakel kan word. Hul waardes vir die error_reporting-richtlijn kan wees: E_WARNING, E_NOTICE en ander.

Dit is die moeite werd om elke tipe in meer detail te oorweeg en sy funksionele te beskryf.

  • E_ERROR. Gewoonlik verwys hierdie tipe na sulke foute wat nie vinnig uitgeskakel kan word of die uitvoer van die skrif voortduur nie. Dit kan probleme met geheue toekenning insluit;

  • E_WARNING. Die kode sal voortgaan om te werk, maar 'n waarskuwing sal vertoon word dat daar 'n fout is, waarvan die kode in die boodskap aangedui word. Nie krities nie;

  • E_NOTICE. Kennisgewings wat wys: iets het gebeur wat 'n fout kan veroorsaak. Ook nie krities vir die uitvoering van kode nie;

  • E_USER_ERROR. Foute gegenereer deur die gebruiker;

  • E_ALL. Dit sluit alle vorme van foute in. Tipies, hierdie opsie is standaard geaktiveer wanneer die tolk geïnstalleer word.

Hoe om foutuitset in PHP in te skakel

Die metode om foutmeganismes in PHP te gebruik, kan verskil afhangende van waar die kode toegepas word - op 'n gasheer of op 'n plaaslike rekenaar. In die tweede geval kan die ontwikkelaar sy bediener en vertoning instel soos hy dit behaag, naamlik, verander die konfigurasie in die php.ini-lêer. Dit is genoeg om twee riglyne te gee - display_errors and error_reporting na die volgende vorm:

Display_errors on

Error_reporting E_ALL

Met hierdie opdragte kan u alle fout boodskappe direk in die blaaier venster vertoon.

As die ontwikkeling uitgevoer word op 'n virtuele hosting, dan word die fout vertoon funksie meestal afgeskakel vir sekuriteitsredes. Om dit te aktiveer, moet u die Apache htaccess-bediener konfigurasie lêer gebruik. Gewoonlik is dit in die wortel van die werf. Jy moet 'n paar lyne daaraan toevoeg deur enige teksredakteur te gebruik:

Php_flag display_errors on

Php_value error reporting -1

U kan ook foute direk vanaf die kode uitvoer met die ini_set () funksie. Dit moet egter in gedagte gehou word dat die toepassing daarvan na die ontwikkeling van die werf veiligheidsprobleme kan veroorsaak.

Skryf aan lêer

Met PHP kan u al die foute wat op 'n sekere plek op die hardeskyf plaasgevind het, stoor. Om die uitset van PHP-foute in 'n lêer in te sluit, kan u drie metodes gebruik:

  1. Wysig die php.ini-lêer. Hier moet jy twee lyne definieer. Die eerste een is log_errors = Aan, wat werklik die uitset vermoë aktiveer. Die tweede is error_log = pad / na die verlangde / lêer.

  2. Wysig htaccess. Jy kan ook twee reëls byvoeg. Php_value log_errors "op" en php_value error_log path / na die lêer.

  3. Gebruik die ini_set funksie op die vereiste plek van kode.

gevolgtrekking

Die uitset van foute in PHP is 'n noodsaaklike hulpmiddel in debugging kode. Maar dit kan ook potensieel kwesbare gebiede skep. Daarom is dit nodig om hierdie meganisme noukeurig en versigtig te gebruik. Nadat die webwerf of diens al die stadiums van toetsing geslaag het, moet u seker maak dat dit nie foute toon waarmee 'n aanvaller belangrike data kan verkry nie.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 af.birmiss.com. Theme powered by WordPress.