zvermafia
@zvermafia
WebDev

Один и тот же код дает разные результаты, в чем может быть причина?

Локальный комьютер: PHP 7.1.28
Выдает:
Error [8] in [/home/vagrant/code/ch11q1.php] at line [7]: '[Undefined variable: a]'
4fh8vu9mo536cps459am7h9c64


Online PHP editor (https://3v4l.org/poDFC): PHP 7.1.28
Выдает:
Error [8] in [/in/poDFC] at line [7]: '[Undefined variable: a]'
Error [2] in [/in/poDFC] at line [8]: '[session_start(): Cannot send session cookie - headers already sent by (output started at /in/poDFC:3)]'
Error [2] in [/in/poDFC] at line [8]: '[session_start(): Cannot send session cache limiter - headers already sent (output started at /in/poDFC:3)]'
25578025135a08b4098d16d73c849820


Сам код:
<?php

$handler = function($errorNumber, $errorMessage, $file, $line) {
    echo "Error [$errorNumber] in [$file] at line [$line]: '[$errorMessage]'\r\n";
};

set_error_handler($handler);

try {
    echo $a;
    session_start();
    echo session_id();
} catch (Throwable $e) {
    echo "Error caught!";
}


P.S.: Этот код из книги PHP 7 Zend Certification Study Guide.

UPD #1: Этот URL тоже из книги: https://3v4l.org/poDFC
  • Вопрос задан
  • 134 просмотра
Решения вопроса 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Причина в настройках сервера. На 3v4l сервер настроен правильно, а дома через какой-нибудь убогий вамп или опенсервер включен output buffering чтобы нубы не так сильно рыдали, написав свобю первую кривую программу.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
xEpozZ
@xEpozZ
Веб-разработчик
Онлайн редакторы настраивают свои error_handler'ы поверх ваших, поэтому и разница в выводе
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы