Как исправить php conf, чтобы `die` и` exit` работали? - PullRequest
0 голосов
/ 25 апреля 2019

Я запускаю API с symfony4 и php7.1.

Когда я пытаюсь выполнить отладку, сценарий продолжается даже после die; или exit();.

Как заставить die или exit работать так, чтобы я мог легко отлаживать?

Итак, это мой первый проект, использующий php@7.1 на этом компьютере (Mojave MacOS). Я действительно думаю, что это проблема конфигурации php@7.1, потому что она отлично работает с другими моими API, использующими php@7.0. Также мой код работает на моем компьютере-коллеге, используя ту же версию php, и скрипт останавливается после die;.

Я читал, что это может включать что-то с включенным safe_mode, включенной буферизацией вывода или включенным error_reporting, но я проверил каждый файл php.ini и не вижу ничего необычного.

Вот мой код на всякий случай:

Единственное, что останавливает скрипт, это throw new \Exception()

/**
 * @Route("/invoice_plannings", methods={"GET"}, name="createInvoicePlanning")
 */
public function createInvoicePlanning(Request $req): JsonResponse
{
    // throw new \Exception("Error Processing Request", 1);
    echo "not exiting\n"; exit();
    die("not dying");
    return $this->json("script continued", 200);
}

Я ожидаю, что скрипт завершится, но он будет продолжаться до конца функции.

Кто-нибудь знает, действительно ли это проблема конфигурации PHP, Symfony или еще что-нибудь?

...