1

Тема: Як зневаджувати PHP?

Можна якось розпечатати значення змінної в якийсь термінал?

2

Re: Як зневаджувати PHP?

І чому сторінка іноді рендериться порожньою?

3

Re: Як зневаджувати PHP?

phpinfo()

Можна і логгер свій спаяти, щоб у файл писало.
А взагалі - нормальні середовища типу нетБобів мають зручні засоби зневаду покроково, здс.

4

Re: Як зневаджувати PHP?

Спаяв логгер:

    function clog($msg) {
        file_put_contents('/home/bunyk/phplog', $data, FILE_APPEND);
    };
    clog('start!');

Логгер не ствоює файл. Нема доступу? Чому він не жаліється? Як дати доступ?

5

Re: Як зневаджувати PHP?

Я створив той файл, дав йому 777 права. Не працює. Тоді я витер повний шлях, може він створить його десь в своєму каталозі. Все одно повертає false. :(

6 Востаннє редагувалося Invader (13.03.2013 01:22:34)

Re: Як зневаджувати PHP?

Взагалі то є функція is_writable яка поверне true, якщо в каталог можна щось записати. Про всяк випадок: для перевірки того чи є права на запис в каталог потірбно передати шлях до каталогу. Від імені якого користувача працює Apache? Він мабуть немає достатніх прав для запису в домашній каталог вашого користувача.
А якщо так:

chmod o+x /home/bunyk/
chmod o+x /home/bunyk/phplog
Подякували: leofun011

7

Re: Як зневаджувати PHP?

bunyk написав:

Спаяв логгер:

    function clog($msg) {
        file_put_contents('/home/bunyk/phplog', $data, FILE_APPEND);
    };
    clog('start!');

Не розумію чому $data в фактичних параметрах, а $msg в формальних. Мабуть тому і нічого не записує, бо змінна не визначенна до виклику функції. А файл не створювало мабуть із-за того що прав не вистачало.

Чому він не жаліється?

error_reporting(E_ALL);

Подякували: bunyk, leofun012

8 Востаннє редагувалося funivan (13.03.2013 09:32:39)

Re: Як зневаджувати PHP?

Даю конкретну пораду для початкових PHP програмерів.
Завжди спочатку коду пишіть ось ці два рядки:

ini_set('display_errors', true);
error_reporting(E_ALL);

і якщо дальше виникають проблеми гугліть їх, якщо не має рішення пишіть на форум ;)

Подякували: bunyk1

9

Re: Як зневаджувати PHP?

Ура, tail -f phplog
І все працює!
Всім дякую, особливо за ini_set('display_errors', true);
І так, там таки були проблеми з іменами змінних. Але PHP мовчав. :)

10

Re: Як зневаджувати PHP?

по дефолту в PHP.іні виключений вивід помилок

11

Re: Як зневаджувати PHP?

І ще для дебагу, можна поставти xdebag,
або error_log(print_r($value_to_debag,true)); в коді, скине значення змінної в php_error.log