【问题标题】:Laravel 5.1 Custom Parameter on Custom ExceptionLaravel 5.1 自定义异常上的自定义参数
【发布时间】:2016-04-26 13:57:52
【问题描述】:

我正在尝试创建一个包含自定义参数的自定义异常。我觉得我在这里做错了什么。基本上我想在 Laravel 的异常处理文件中处理异常,但我需要额外的异常数据来了解是谁导致了异常。这就是我目前所拥有的......

<?php

namespace App\Exceptions;

use Exception;

class ApiException extends \Exception
{
    public $userId;

    public function __construct($userId, $message, $code, Exception $previous)
    {
        parent::__construct($message, $code, $previous);
        $this->userId = $userId;
    }

}

这里的想法是将 userId 传递给异常,以便我以后可以访问它。但我有一个问题。在这种情况下,我不知道要作为“$previous”变量传入什么...

throw new ApiException($user->id, 'im testing', 200, $previous);

任何帮助将不胜感激。

【问题讨论】:

    标签: php exception exception-handling laravel-5 laravel-5.1


    【解决方案1】:

    看到这个documentation 例外

    前面的变量用于异常链接,默认值为NULL。您可以将其添加到您的扩展程序中。

    <?php
    
    namespace App\Exceptions;
    
    use Exception;
    
    class ApiException extends \Exception
    {
        public $userId;
    
        public function __construct($userId, $message, $code, Exception $previous = NULL)
        {
            parent::__construct($message, $code, $previous);
            $this->userId = $userId;
        }
    
    }
    

    这样你可以继续支持异常链,如果你将来需要它,但不是每次抛出 ApiException 时都需要它。

    【讨论】:

      猜你喜欢
      • 2019-02-25
      • 1970-01-01
      • 1970-01-01
      • 2015-07-01
      • 1970-01-01
      • 2016-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多