Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8715651
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 13, 20262026-06-13T05:53:56+00:00 2026-06-13T05:53:56+00:00

I have a custom exception class that extends Exception and adds on the ability

  • 0

I have a custom exception class that extends Exception and adds on the ability to pass back more data on what threw the exception. The problem now is if I want to catch my custom exception and a standard exception, but handle them with the same block of code, I don’t know how to do that other than create a new function (which I don’t want to do for every place I’d like to use this).

try {

} catch(QM\DebugInfoException $e) {
    // I don't want to duplicate the Exception handling code up here
}catch(Exception $e){
    $db->rollBack();

    $return['error'] = 1;
    $return['errInfo'] = array(
        'code' => $e->getCode(),
        'message' => $e->getMessage(),
        'trace' => $e->getTraceAsString()
    );

    // I'd rather handle both here, and just add data on to $return['errInfo']
    switch ($ExceptionType) {
        case 'QM\DebugInfoException':
            $return['errInfo']['extraInfo'] = $e->getExtraInfo();
            break;
    }
}

Does anyone have any good ideas on this?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-13T05:53:57+00:00Added an answer on June 13, 2026 at 5:53 am

    You could do a get_class($e) and that will return the string representing the class name of the exception object then use that to compare in your switch.

    Another option is to put a function that encapsulates the common functionality, and call it from each of the exception blocks. That way new, unexpected exceptions not in your switch can still percolate up. I’m a big fan of explicitly catching specific exceptions.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have custom exceptions in my django project that look like this: class CustomFooError(Exception):
I have a custom exception class like the following : case class CustomException(errorMsg:String) extends
I have a custom exception class with a show() method that shows exceptions in
I have a class that has more than a dozen properties. For most of
I have an abstract class Exception in custom namespace which has no abstract methods.
I've written the following custom Exception handler: namespace System\Exception; class Handler extends \Exception {
I have implemented a custom Table Model as follows: public class MyTableModel extends AbstractTableModel
We have a Web Service implementation that throws a custom SecurityException . public class
I have created a custom exception however when it is fired, I'm not getting
I have following code using hibernate to throw a custom exception on error and

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.