Cyfrifiaduron, Fathau o ffeiliau
Allbwn Gwall yn PHP
Nid yw Beth bynnag gofal a sylw yn rhaglennydd we, er ei bod yn ddarostyngedig i wallau a gwallau. O ganlyniad, gallai hyn arwain at y safle neu wasanaeth ddiffygion. Ar gyfer debugging yn ystod datblygiad y prosiect, mae'n bosibl cynnwys yr allbwn o wallau yn PHP.
Sut mae'n gweithio?
PHP yn bendant yn ymateb i god sgript penodol. Mewn rhai achosion - yn cymryd camau priodol, mewn achosion eraill - yn dangos gwall. Mae'r mecanwaith hwn yn helpu'r datblygwr ar adeg gweithredu'r adran cod i gywiro diffygion yn brydlon.
Fodd bynnag, nid yw'r allbwn gwall yn PHP yn angenrheidiol bob amser. Ar ôl y datblygiad y prosiect yn cael ei gwblhau, y swyddogaeth hon yn cael ei droi i ffwrdd er mwyn osgoi toriad mewn neu fynediad heb awdurdod.
addasiad
Yn y cyfluniad cyfan y cyfieithydd PHP yn ffeil php.ini cyfrifol. Mae wedi error_reporting gyfarwyddeb, a oedd yn union yn diffinio allbwn gwall yn PHP. Fodd bynnag, er ei fod yn cynnwys trin eithriad, er eu harddangos yn y ffenestr porwr display_errors cyfrifol. Os yw'n anabl, mae'r system yn dangos gwall yn lle dudalen wag.
eithriad dosbarthu
Gall Allbwn Gwall yn PHP yn cael ei rannu i nifer o gategorïau:
Gwallau sy'n arwain at y sgript yn peidio â gweithio. Mae'r hyn a elwir yn angheuol. Mae'r rhain yn cynnwys E_ERROR, E_COMPILE_ERROR;
camgymeriadau y gellir eu cywiro. Gall eu gwerthoedd ar gyfer y gyfarwyddeb error_reporting fydd: E_WARNING, E_NOTICE, ac eraill.
Mae'n werth edrych yn agosach ar bob math a disgrifio ei ymarferoldeb.
E_ERROR. Yn nodweddiadol, mae'r math hwn yn cyfeirio at gamgymeriadau o'r fath, na ellir eu dileu yn gyflym neu barhau â'r sgript. Gall hyn gynnwys problemau gyda dyraniad cof;
E_WARNING. Bydd y cod yn parhau i weithio, ond bydd rhybudd yn ymddangos bod rhywfaint o gamgymeriad, mae'r cod yn cael ei nodi yn y neges. Nid yn hanfodol;
E_NOTICE. Hysbysiadau, sy'n dangos bod rhywbeth a allai fod wedi achosi gwall. Maent hefyd yn nid yn feirniadol i weithrediad y cod ar waith;
E_USER_ERROR. Gwallau a gynhyrchir gan y defnyddiwr;
E_ALL. Mae hyn yn cynnwys pob math o wallau. Yn nodweddiadol, alluogir y dewisiad yma yn ddiofyn pan fyddwch yn gosod y cyfieithydd.
Sut i alluogi allbwn camgymeriad yn PHP
Gall y dechneg a ddefnyddir mewn mecanwaith gwall PHP amrywio yn dibynnu ar ble y cod yn cael ei ddefnyddio - wrth gynnal neu ar y cyfrifiadur lleol. Yn yr ail achos, gall y datblygwr addasu eich gweinydd ac arddangos wrth iddo eisiau - sef, i newid y cyfluniad yn y ffeil php.ini. I ddyfynnu dau gyfarwyddebau - display_errors a error_reporting at y ffurf ganlynol:
display_errors ar
error_reporting E_ALL
Mae'r gorchmynion yn caniatáu i arddangos yr holl negeseuon gwall yn uniongyrchol yn y ffenestr porwr.
Os bydd y datblygiad yn cael ei gyflawni ar weinydd rhithiol, mae'r aml gwall swyddogaeth arddangos, trowch i ffwrdd am resymau diogelwch. Felly, yr angen at activate iddo i ddefnyddio Apache gosodiadau gweinydd .htaccess file. Fel arfer, mae wrth wraidd y safle. Mae angen i chi ychwanegu ychydig o linellau mewn unrhyw olygydd testun:
display_errors php_flag ar
php_value adrodd gwall -1
Hefyd yn dangos y gall camgymeriadau fod yn uniongyrchol oddi wrth y cod gan ddefnyddio ini_set swyddogaeth (). Fodd bynnag, dylid cadw mewn cof y gall ar ôl y datblygiad y safle ei ddefnydd yn achosi problemau diogelwch.
ffeilio
PHP yn eich galluogi i arbed yr holl gamgymeriadau sy'n digwydd mewn man penodol ar y disg caled. I alluogi gwall PHP yn y ffeil allbwn, gallwch ddefnyddio tair ffordd:
Golygwch y ffeil php.ini. Yma, mae angen diffinio dwy linell. Yn gyntaf - log_errors = On, sydd mewn gwirionedd ysgogi y gallu i allbwn. Ail - error_log = llwybr / i'r ddymunir / ffeil.
Newid htaccess. Mae hefyd yn bosibl ychwanegu y ddwy linell. log_errors php_value «ar» a php_value error_log llwybr / ffeil.
Defnyddiwch y swyddogaeth ini_set lleoliad cod cywir.
casgliad
Allbwn Gwall yn PHP - yn offeryn hanfodol i cod debug. Ond gall hefyd greu ardal a allai fod yn agored i niwed. Felly, defnyddio'r mecanwaith hwn angen yn ofalus ac yn gywir i chi. Unwaith y safle neu wasanaeth yn mynd trwy'r holl gamau o brofi, mae angen i chi gymryd gofal i sicrhau nad yw'n dangos y gwall, y gall ymosodwr gael mynediad at ddata sensitif.
Similar articles
Trending Now