Bird
Raised Fist0
PHPprogramming~5 mins

Try-catch execution flow in PHP - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of a try block in PHP?
The try block contains code that might throw an exception. It lets you test code that could cause errors so you can handle them gracefully.
Click to reveal answer
beginner
What happens when an exception is thrown inside a try block?
PHP stops running the try block and looks for a matching catch block to handle the exception. If found, it runs the catch block code.
Click to reveal answer
beginner
What is the role of the catch block?
The catch block catches exceptions thrown in the try block. It lets you respond to errors, like showing a message or fixing the problem.
Click to reveal answer
beginner
What happens if no exception is thrown in the try block?
The catch block is skipped, and the program continues running the code after the try-catch structure.
Click to reveal answer
intermediate
What is the finally block used for in try-catch-finally?
The finally block runs code after try and catch, no matter what. It's good for cleanup tasks like closing files or connections.
Click to reveal answer
What part of try-catch handles the error when an exception occurs?
Afinally block
Btry block
Ccatch block
Dthrow statement
If no exception is thrown, which blocks run?
Atry and finally
Btry and catch
Ctry only
Dcatch only
What happens if an exception is thrown but no catch block matches it?
AThe finally block runs and then the program stops
BThe exception is ignored
CThe program continues normally
DA fatal error occurs and the program stops
Which block is optional in a try-catch-finally structure?
Atry
Bcatch
CAll are mandatory
Dfinally
Where should you put code that must run regardless of exceptions?
Atry block
Bfinally block
Ccatch block
Doutside try-catch
Explain the flow of execution in a try-catch-finally structure when an exception is thrown.
Think about what happens step-by-step when an error occurs.
You got /4 concepts.
    Describe what happens if no exception occurs inside the try block.
    Consider the normal flow without errors.
    You got /4 concepts.

      Practice

      (1/5)
      1.

      What is the main purpose of a try-catch block in PHP?

      easy
      A. To handle errors without stopping the program
      B. To speed up the execution of the program
      C. To create new variables automatically
      D. To print output to the screen

      Solution

      1. Step 1: Understand the role of try-catch

        The try block contains code that might cause an error, and the catch block handles that error.
      2. Step 2: Identify the purpose

        This structure prevents the program from stopping abruptly by managing errors gracefully.
      3. Final Answer:

        To handle errors without stopping the program -> Option A
      4. Quick Check:

        Try-catch = error handling [OK]
      Hint: Try-catch is for error handling, not speed or output [OK]
      Common Mistakes:
      • Thinking try-catch speeds up code
      • Confusing try-catch with output commands
      • Believing try-catch creates variables
      2.

      Which of the following is the correct syntax to start a try-catch block in PHP?

      ?
      easy
      A. try() { /* code */ } catch() { /* handle */ }
      B. try: /* code */ catch: /* handle */
      C. try { /* code */ } catch (Exception $e) { /* handle */ }
      D. try[] { /* code */ } catch[] { /* handle */ }

      Solution

      1. Step 1: Recall PHP try-catch syntax

        PHP uses curly braces {} to define blocks after try and catch keywords.
      2. Step 2: Match correct syntax

        try { /* code */ } catch (Exception $e) { /* handle */ } correctly uses try { } and catch (Exception $e) { } syntax.
      3. Final Answer:

        try { /* code */ } catch (Exception $e) { /* handle */ } -> Option C
      4. Quick Check:

        Curly braces with try and catch = correct syntax [OK]
      Hint: Remember try and catch use curly braces in PHP [OK]
      Common Mistakes:
      • Using colons instead of braces
      • Adding parentheses after try or catch
      • Using square brackets instead of braces
      3.

      What will be the output of this PHP code?

      try {
          echo "Start\n";
          throw new Exception("Error happened");
          echo "End\n";
      } catch (Exception $e) {
          echo "Caught: " . $e->getMessage() . "\n";
      }
      echo "Done\n";
      medium
      A. Start Caught: Error happened Done
      B. Start Done
      C. Caught: Error happened Done
      D. Start End Caught: Error happened Done

      Solution

      1. Step 1: Trace code inside try block

        "Start" is printed, then an Exception is thrown, so the next echo "End" is skipped.
      2. Step 2: Catch block runs and prints message

        The catch block prints "Caught: Error happened" and then after try-catch, "Done" is printed.
      3. Final Answer:

        Start Caught: Error happened Done -> Option A
      4. Quick Check:

        Exception stops try, catch prints message, then Done [OK]
      Hint: Exception skips rest of try, catch runs, then code continues [OK]
      Common Mistakes:
      • Thinking code after throw runs
      • Missing catch block output
      • Assuming program stops after exception
      4.

      Find the error in this PHP code snippet:

      try {
          echo "Hello";
      } catch {
          echo "Error caught";
      }
      medium
      A. try block cannot have echo statements
      B. Missing exception variable in catch parentheses
      C. Missing semicolon after echo statements
      D. catch block must come before try block

      Solution

      1. Step 1: Check catch block syntax

        In PHP, catch must specify the exception type and variable, like catch (Exception $e).
      2. Step 2: Identify missing part

        The catch block here has no parentheses or variable, causing a syntax error.
      3. Final Answer:

        Missing exception variable in catch parentheses -> Option B
      4. Quick Check:

        Catch needs (Exception $e) [OK]
      Hint: Catch always needs (Exception $e) or similar [OK]
      Common Mistakes:
      • Omitting exception variable in catch
      • Thinking echo needs semicolon after last statement only
      • Believing catch can come before try
      5.

      Consider this PHP code:

      function divide($a, $b) {
          try {
              if ($b == 0) {
                  throw new Exception("Division by zero");
              }
              return $a / $b;
          } catch (Exception $e) {
              return $e->getMessage();
          }
      }
      
      echo divide(10, 2) . "\n";
      echo divide(5, 0) . "\n";

      What will be the output?

      hard
      A. Error Error
      B. 5 0
      C. Division by zero Division by zero
      D. 5 Division by zero

      Solution

      1. Step 1: Analyze divide(10, 2)

        Since 2 is not zero, division happens: 10 / 2 = 5 is returned.
      2. Step 2: Analyze divide(5, 0)

        Since 0 triggers exception, catch returns the message "Division by zero".
      3. Final Answer:

        5 Division by zero -> Option D
      4. Quick Check:

        Valid division returns number; zero divisor returns error message [OK]
      Hint: Exception returns message; normal runs return result [OK]
      Common Mistakes:
      • Expecting zero instead of error message
      • Thinking exception stops program without catch
      • Confusing return values inside try-catch
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard