小编Kat*_*tie的帖子

PHP 7 不一致地抛出除以零的错误

我目前正在尝试了解 PHP 7 中新错误处理的行为。

在 PHP 文档中DivisionByZeroError,它指出:

当尝试将数字除以零时抛出 DivisionByZeroError。

很公平,但是当使用 / 运算符时它不会抛出 DivisionByZeroError。

在这个例子中,我希望两个错误都被捕获:

declare(strict_types=1);
function usesIntDiv(int $a, int $b) {
    return intdiv($a,$b);
}

function divide(int $a, int $b) {
    return $a / $b;
}

try {
    echo usesIntDiv(2,0);
} catch (DivisionByZeroError $e) {
    echo "Caught DivisionByZeroError!\n";
}

echo "\n";

try {
    echo divide(2,0);
} catch (DivisionByZeroError $e) {
    echo "Caught DivisionByZeroError!\n";
}
Run Code Online (Sandbox Code Playgroud)

相反,只有第一个被捕获:

抓住了 DivisionByZeroError!

PHP 警告:第 9 行 TypeError.php 中被零除...

为什么?还有其他类似的情况吗?我的理解是,如果您捕获,Throwable您将捕获任何可以引发的内容,这将使 PHP 错误处理更易于管理。但是在这种情况下,如果我使用/ …

php error-handling php-7

5
推荐指数
1
解决办法
1105
查看次数

wp-load.php 文件变空了

我有多个 WordPress 网站。所有这些已经运行了很长时间。但是突然我的 WP 网站显示错误:

此页面无效

当我调查问题时,我在错误日志中发现了这一点:

"Uncaught Error: Call to undefined function wp() in /home/nc136xrqx05i/public_html/wp-blog-header.php:16"
and the wp-load.php file is 0.
Run Code Online (Sandbox Code Playgroud)

然后我重命名插件文件。然后网站运行,但如果我尝试从 dashbaord 的插件文件夹中安装插件,wp-load 文件再次变空并且站点关闭。

我该如何解决?

wordpress

3
推荐指数
1
解决办法
1463
查看次数

标签 统计

error-handling ×1

php ×1

php-7 ×1

wordpress ×1