我有一个使用DOMDocument
的脚本.在某些环境中,它可能会失败,原因可能是某个模块未加载.我try 做的是为此脚本的用户提供修复此行为的说明.
以下是重现该问题的最小脚本:
<?php
echo 'start!';
try {
$doc = new DOMDocument();
} catch (Exception $e) {
echo 'catched';
}
echo 'end';
?>
如果我在浏览器中打开它(由我当前的服务器提供服务,涉及nginx),我只看到start!
(返回代码是500
;如果省略try..catch
,则输出相同).因此,问题不仅在于检测是否安装了正确的模块(我是否应该使用extension_loaded('dom')
来判断它?),还在于try..catch
似乎不起作用(我在输出中没有得到catched
;在本例中我使用的是PHP 7.4.3).
我应该如何正确处理这个案件,有什么建议吗?