Хатогии PHP-ро чоп кардан
Агар шумо дар рамзи PHP-и худ хатогӣ кунед,
сервер тавсифи ин хатогӣ ро ҳамин ҳол
ба браузер чоп мекунад. Хатогӣ се навъ дорад: notice,
warning ва fatal.
Notice-ҳо тавзеҳот дар бораи он ҳастанд, ки дар рамзи шумо чизе нодуруст бошад. Гарчанде ки рамз ҳамчун пеш кор мекунад. Беҳтар аст, ки ин хатогиҳоро тарк накарда, онҳоро ислоҳ кунед.
Warning-ҳо огоҳиҳо дар бораи он ҳастанд, ки чизе нодуруст рафтааст. Одатан дар ин ҳолат рамзи шумо оғоз мешавад, вале кор намекунад ҳамчунон ки шумо мехоҳед.
Fatal-ҳо дар ҳолате рух медиҳанд, ки вақти рамзи PHP иҷро карда намешавад. Одатан ин бо хатогии синтаксисие, ки шумо кардаед, алоқаманд аст.
Аммо, як мушкилие ҳаст. Ба таври пешфарз notice-ҳо ва warning-ҳо хомӯш карда шудаанд, ва ба ҷои fatal-ҳо шумо фақат экрани сафед хоҳед дид. Ин, албатта, каммаълумот аст. Биёед чопи ҳамаи хатогиҳоро фаъол кунем:
<?php
error_reporting(E_ALL);
?>
Гаҳо, аммо, ин дастур кор намекунад (аз танзимоти сервер вобаста аст). Ба ёрӣ дастури дуввум меояд:
<?php
ini_set('display_errors', 'on');
?>
Беҳтар аст, ки ҳардуро якбора нависед:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'on');
?>
Дар сомонае, ки ба интернет бор карда шудааст, чопи хатогиҳо беҳтар аст, ки хомӯш карда шавад. Ин чунин анҷом дода мешавад:
<?php
error_reporting(0);
ini_set('display_errors', 'off');
?>