Bird
Raised Fist0
PHPprogramming~10 mins

Return values in PHP - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - Return values
Function called
↓
Execute function code
↓
Return value reached
↓
Return value sent back
↓
Function call replaced by return value
When a function is called, it runs its code and sends back a value using return. The calling code receives this value.
Execution Sample
PHP
<?php
function add($a, $b) {
  return $a + $b;
}
$result = add(2, 3);
echo $result;
?>
This code defines a function that adds two numbers and returns the sum, then prints the result.
Execution Table
StepActionEvaluationResult
1Call add(2, 3)Parameters: a=2, b=3Function starts
2Calculate a + b2 + 35
3Return 5Return statement reached5 sent back to caller
4Assign return to $result$result = 5$result holds 5
5echo $resultPrint $resultOutput: 5
💡 Function ends after return; value 5 sent back and printed
Variable Tracker
VariableStartAfter Step 1After Step 4Final
$aundefined2undefinedundefined
$bundefined3undefinedundefined
$resultundefinedundefined55
Key Moments - 3 Insights
Why does the function stop running after the return statement?
Because return sends a value back and immediately ends the function execution, as shown in step 3 of the execution_table.
What happens to the return value after the function finishes?
The return value replaces the function call in the code, so $result gets assigned the returned value, as seen in step 4.
Can code after return inside the function run?
No, code after return is ignored because return ends the function immediately, shown by no steps after step 3 inside the function.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what value does the function add return at step 3?
A2
B5
C3
DUndefined
💡 Hint
Check the 'Result' column in step 3 of the execution_table.
At which step does the variable $result get its value?
AStep 2
BStep 1
CStep 4
DStep 5
💡 Hint
Look at the 'Action' column where $result is assigned in the execution_table.
If the return statement was removed, what would happen to the output?
AOutput would be empty or nothing
BOutput would be 0
COutput would be 5
DNo output or error
💡 Hint
Without return, the function returns nothing, so $result is empty; see variable_tracker for $result values.
Concept Snapshot
Return values in PHP:
- Use 'return' to send a value back from a function.
- Function stops running after return.
- The returned value replaces the function call.
- Assign return to variables to use the result.
- Code after return inside function does not run.
Full Transcript
This example shows how a PHP function returns a value. When add(2, 3) is called, the function runs with parameters a=2 and b=3. It calculates 2 + 3 and returns 5. The return statement ends the function immediately. The returned value 5 is assigned to $result. Then echo prints 5. Variables $a and $b hold 2 and 3 during the function. $result gets 5 after the function returns. Code after return is not executed. This is how return values work in PHP functions.

Practice

(1/5)
1. What does the return statement do inside a PHP function?
easy
A. It declares a new variable inside the function.
B. It prints a value on the screen.
C. It stops the entire script immediately.
D. It sends a value back to where the function was called.

Solution

  1. Step 1: Understand the purpose of return

    The return statement sends a value back to the place where the function was called.
  2. Step 2: Differentiate from other actions

    It does not print or stop the whole script; it only ends the function and sends back a value.
  3. Final Answer:

    It sends a value back to where the function was called. -> Option D
  4. Quick Check:

    Return sends value back [OK]
Hint: Return sends value back to caller, not print or stop script [OK]
Common Mistakes:
  • Thinking return prints output
  • Confusing return with exit or die
  • Assuming return declares variables
2. Which of the following is the correct syntax to return the value 10 from a PHP function?
easy
A. return 10;
B. return(10)
C. return = 10;
D. return: 10;

Solution

  1. Step 1: Recall PHP return syntax

    The correct syntax uses the keyword return followed by the value and a semicolon: return 10;
  2. Step 2: Identify syntax errors in other options

    A uses invalid assignment; return(10) misses semicolon; D uses colon incorrectly.
  3. Final Answer:

    return 10; -> Option A
  4. Quick Check:

    Return value ends with semicolon [OK]
Hint: Return value with semicolon, no assignment or colon [OK]
Common Mistakes:
  • Omitting semicolon after return
  • Using assignment operator with return
  • Using colon instead of semicolon
3. What will be the output of this PHP code?
function add($a, $b) {
  return $a + $b;
  echo "Done";
}
$result = add(3, 4);
echo $result;
medium
A. 7
B. Done7
C. 7Done
D. Error

Solution

  1. Step 1: Understand return stops function execution

    The return $a + $b; sends back 7 and stops the function, so echo "Done"; is never run.
  2. Step 2: Output the returned value

    The variable $result gets 7, and echo $result; prints 7 only.
  3. Final Answer:

    7 -> Option A
  4. Quick Check:

    Return stops function, only 7 printed [OK]
Hint: Code after return inside function does not run [OK]
Common Mistakes:
  • Expecting code after return to execute
  • Confusing echo inside function with return
  • Thinking return prints output
4. Identify the error in this PHP function:
function multiply($x, $y) {
  $product = $x * $y;
  return
  $product;
}
medium
A. Missing semicolon after return
B. Return statement split incorrectly, returns nothing
C. Variable $product is undefined
D. Function missing closing brace

Solution

  1. Step 1: Analyze the return statement split

    The return is on one line alone, so PHP treats it as returning nothing immediately.
  2. Step 2: Understand effect of line break after return

    The next line $product; is unreachable and not part of return, causing function to return null.
  3. Final Answer:

    Return statement split incorrectly, returns nothing -> Option B
  4. Quick Check:

    Return must be on same line as value [OK]
Hint: Keep return and value on same line to avoid empty return [OK]
Common Mistakes:
  • Splitting return and value on separate lines
  • Assuming return reads next line automatically
  • Ignoring PHP's automatic semicolon insertion
5. You want a PHP function that returns the first non-empty string from an array. Which function correctly returns the first non-empty string or null if none found?
hard
A. function firstNonEmpty(array $arr) { foreach ($arr as $str) { if ($str) { return $str; } } return ''; }
B. function firstNonEmpty(array $arr) { foreach ($arr as $str) { if (isset($str)) { return $str; } } return null; }
C. function firstNonEmpty(array $arr) { foreach ($arr as $str) { if ($str !== '') { return $str; } } return null; }
D. function firstNonEmpty(array $arr) { foreach ($arr as $str) { if ($str == '') { return $str; } } return null; }

Solution

  1. Step 1: Check condition for non-empty string

    function firstNonEmpty(array $arr) { foreach ($arr as $str) { if ($str !== '') { return $str; } } return null; } uses $str !== '' to find strings that are not empty exactly.
  2. Step 2: Confirm return value if none found

    function firstNonEmpty(array $arr) { foreach ($arr as $str) { if ($str !== '') { return $str; } } return null; } returns null if no non-empty string is found, which is clear and intentional.
  3. Final Answer:

    function firstNonEmpty(array $arr) { foreach ($arr as $str) { if ($str !== '') { return $str; } } return null; } -> Option C
  4. Quick Check:

    Return first non-empty string or null [OK]
Hint: Use strict check !== '' to find non-empty strings [OK]
Common Mistakes:
  • Using loose truthy check that skips '0' string
  • Returning empty string instead of null when none found
  • Returning on empty string instead of non-empty
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