gpt4 book ai didi

symfony - 如何在服务中进行正确的错误处理

转载 作者:行者123 更新时间:2023-12-03 09:09:20 25 4
gpt4 key购买 nike

我正在为Symfony 4项目编写小型服务
我只是想知道我的错误处理是否是一个好主意。
我的类(class)目前看起来像这样:

namespace App\Service;

use Symfony\Component\Filesystem\Filesystem;
use Symfony\Component\Filesystem\Exception\;

/**
* Class XMLHelper
* @package App\Service
*/
class XMLHelper
{

public function getContent(string $path): array
{
$fileSystem = new Filesystem();
if ($fileSystem->exists($path)) {

libxml_use_internal_errors(true);
$object = simplexml_load_file($path);

if ($object === false) {
$str = 'Failed loading XML: ';
foreach(libxml_get_errors() as $error) {
$str = $error->message . ', ';
}
throw new \UnexpectedValueException($str);
}

return $object;

} else {
throw new \FileNotFoundException('File ' . $path . ' not found.');
}
}
}

我的问题是,我完全需要吗?请问symfony不会丢
反正出错。输出不是多余的吗?怎么做
您做得最好还是总体上正确?如果你有自己的
服务异常(exception)。

最佳答案

IMO,您应该在适当的时候毫不犹豫地引发异常。您的代码看起来还不错,它提供了有关遇到的示例的详尽信息。

ifself与Symfony无关,由代码决定在正确的地方抛出正确的异常。

希望这可以帮助。

附言而且不要忘了libxml_clear_errors();

关于symfony - 如何在服务中进行正确的错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49190329/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com