Wie zeige ich PHP-Fehler an?
P粉807397973
P粉807397973 2023-08-23 10:45:28
0
2
473

Ich habe meine PHP-INI-Datei (php.ini) überprüft und display_errors festgelegt und die Fehler werden als E_ALL gemeldet. . Ich habe meinen Apache-Webserver neu gestartet.

Ich habe diese Zeilen sogar oben im Skript eingefügt und es werden nicht einmal einfache Parsing-Fehler erkannt. Beispielsweise deklariere ich eine Variable mit "$", schließe die Anweisung jedoch nicht mit ";". Aber alle meine Skripte zeigen bei diesen Fehlern eine leere Seite an, aber ich möchte die Fehler tatsächlich sehen.

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

Was muss noch getan werden?

P粉807397973
P粉807397973

Antworte allen (2)
P粉203648742

您无法在运行时启用错误输出的同一文件中捕获解析错误,因为它在实际执行任何内容之前解析文件(并且由于在此期间遇到错误,因此它不会执行任何内容)。您需要更改实际的服务器配置,以便打开 display_errors 并使用适当的 error_reporting 级别。如果您无权访问 php.ini,您也许可以使用 .htaccess 或类似文件,具体取决于服务器。

此问题可能会提供更多信息。

    P粉465287592

    开发环境

    这对我来说总是有效:

    ini_set('display_errors', '1'); ini_set('display_startup_errors', '1'); error_reporting(E_ALL);

    但是,这不会使 PHP 显示同一文件中发生的解析错误 - 显示这些错误的唯一方法是使用以下行修改 php.ini:

    display_errors = on

    (如果您无权访问php.ini,则将此行放入.htaccess中也可能有效):

    php_flag display_errors 1

    产品环境

    请注意,上述建议仅适用于开发环境。在实际网站上,它必须是

    display_errors = off log_errors = on

    然后您将能够在错误日志中看到所有错误。请参阅在哪里可以找到 PHP 错误日志

    AJAX 调用

    如果是 AJAX 调用,请在开发服务器上打开 DevTools (F12),然后打开“网络”选项卡。 然后发起您想要看到的结果的请求,它将出现在“网络”选项卡中。单击它,然后单击“响应”选项卡。在那里您将看到确切的输出。
    在实时服务器上时,只需检查错误日志即可。

      Neueste Downloads
      Mehr>
      Web-Effekte
      Quellcode der Website
      Website-Materialien
      Frontend-Vorlage
      Über uns Haftungsausschluss Sitemap
      Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!