Пустая страница, если я объявлю (strict_types = 1); в PHP 7 вверху файла

Недавно я проверял на PHP 7, в частностидекларация возвращаемого типа а такжетип подсказки, Я скомпилировал PHP 7 из исходного кода (главная ветка изGithub) и запустить его в виртуальной коробке Ubuntu 14.04. Я попытался запустить следующий код, чтобы получить тест новогоИсключения, Но это дало пустую страницу.

<?php

function test(): string {

    return [];
}

echo test();

Затем я понимаю, что должен установить ошибку, которая будет отображаться на экране. Поэтому я добавил старомодныйini_set('display_errors', 1); как ниже,

<?php
ini_set('display_errors', 1);

function test(): string {

    return [];
}

echo test();

это дало мне следующийTypeError как и ожидалось в соответствии с этимИнтерфейс Throwable RFC

Неустранимая ошибка: Uncaught TypeError: Возвращаемое значение test () должно быть строки типа, массив возвращен в /usr/share/nginx/html/test.php в строке 7 в /usr/share/nginx/html/test.php : 7 Трассировка стека: # 0 /usr/share/nginx/html/test.php(10): test () # 1 {main} добавляется в /usr/share/nginx/html/test.php в строке 7

Копая дальше я добавилdeclare(strict_types=1); вверху, как показано ниже,

<?php declare(strict_types=1);

ini_set('display_errors', 1);

function test(): string {

    return [];
}

echo test();

и взрыв, ошибка просто исчезла, оставив меня с пустой страницей. Я не могу понять, почему это дает мне пустую страницу?

Ответы на вопрос(2)

Ваш ответ на вопрос