gpt4 book ai didi

php - 如何很好地处理 Doctrine 2的错误?

转载 作者:行者123 更新时间:2023-12-03 07:54:51 24 4
gpt4 key购买 nike

我有一些代码有时会由于不同的原因而引发错误。我想获得更多有关它的信息。问题是我什么都没有,我的应用程序中断了,或者我使用了try catch并从xdebug_message中获得了很多我无法真正显示给用户的东西。

假设我需要做一个对象的集合,并确保填充了一些参数(对于这种情况,我们在实体中具有nullable = false)。如果我错过了这两点之一,这是我通过以下代码获得的:

// We create the event
$event = new Entity\Event;
$event->setType( $this->input->post( 'type' ) );
$event->setDescription( $this->input->post( 'description' ) );

$event->setPlace( $place );
$event->setUser( $user );

// We can now persist this entity:
try
{
$em->persist( $event );
$em->flush();
}
catch( \Doctrine\DBAL\DBALException $e )
{
// Error When Persisting the Entity !!
// 500 Internal Server Error
// A generic error message, given when no more specific message is suitable
$this->response( array( 'error' => $e ), 500 );
}

$message = array(
"success" => TRUE
);

// Everything is fine
$this->response( $message, 200 ); // 200 being the HTTP response code

在这种情况下,它返回:

{"error":{"xdebug_message":"



我想做的是从此错误消息中自动执行某些功能,或向任何可能的配置的正面发送明确的消息。我在这里不能真正使用xdebug,它不是很有用。

如何从PHP或Doctrine本身获取更明确的细节?

我正在使用Doctrine2和Codeigniter 2.1或2不知道。

谢谢

最佳答案

有一些功能可以给你很好的味精。像$e->getMessage() $e->getCode()

关于php - 如何很好地处理 Doctrine 2的错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19104970/

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