PHP nie zgłosiło żadnego błędu, ale skrypt nie działa poprawnie bądź PHP zawiesza się przy jego wykonywaniu. Co zrobić?

Z PHPEdia.pl
Skocz do: nawigacji, wyszukiwania

Biała strona

Często zdarza się, że wykonanie skryptu skutkuje pojawieniem się białej strony bez żadnych komunikatów informujących o powstaniu błędu. Spowodowane jest to niewystarczającym poziomem raportowania błędów. Aby to zmienić należy w pliku konfiguracyjnym php.ini dodać/zmodyfikować następujące dyrektywy

display_errors = on
display_startup_errors = on
error_reporting - E_ALL | E_STRICT

Jeśli z jakichś powodów nie mamy dostępu do pliku php.ini, możemy ustawić raportowanie błędów w skrypcie PHP

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

Niepoprawne użycie znaku równości (=)

Częstym błędem jest niepoprawne użycie znaku równości w instrukcji warunkowej lub pętli.

$var = 2;
if($var = 1) {
    echo '1';
}
else {
    echo '2';
}

Powyższy kod zawsze wyświetli 1, ponieważ w instrukcji warunkowej użyto operatora przypisania (=), a nie porównania (==). Więcej informacji na temato operatorów można znaleźć w dokumentacji.

Linki zewnętrzne


Jest to element FAQ, czyli zestawienia odpowiedzi na najczęściej zadawane pytania.

Zestawienie: Informacje | Podstawy PHP | Porady praktyczne | Pytania z forum | Bezpieczeństwo