Bird
Raised Fist0
PHPprogramming~5 mins

Function declaration and calling in PHP - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Function declaration and calling
O(n)
Understanding Time Complexity

When we declare and call a function, we want to know how long it takes as the input changes.

We ask: How does the time grow when we run the function with bigger inputs?

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


function greet($name) {
    echo "Hello, $name!\n";
}

$names = ['Alice', 'Bob', 'Charlie'];

foreach ($names as $person) {
    greet($person);
}
    

This code defines a function that prints a greeting and calls it for each name in a list.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: Calling the greet function inside a loop.
  • How many times: Once for each name in the array.
How Execution Grows With Input

Each time we add a new name, the function runs one more time.

Input Size (n)Approx. Operations
1010 greetings printed
100100 greetings printed
10001000 greetings printed

Pattern observation: The work grows directly with the number of names.

Final Time Complexity

Time Complexity: O(n)

This means the time to run grows in a straight line with the number of inputs.

Common Mistake

[X] Wrong: "Calling a function once always takes the same time no matter what."

[OK] Correct: The function might be called many times, so total time depends on how many calls happen.

Interview Connect

Understanding how function calls add up helps you explain code efficiency clearly and confidently.

Self-Check

"What if the greet function itself had a loop inside? How would the time complexity change?"

Practice

(1/5)
1. What is the correct way to declare a function named greet in PHP?
easy
A. function greet() { }
B. def greet() { }
C. func greet() { }
D. function: greet() { }

Solution

  1. Step 1: Recognize PHP function declaration syntax

    In PHP, functions are declared using the keyword function followed by the function name and parentheses.
  2. Step 2: Match the correct syntax

    function greet() { } uses function greet() { }, which is the correct PHP syntax for declaring a function named greet.
  3. Final Answer:

    function greet() { } -> Option A
  4. Quick Check:

    PHP function declaration = function greet() { } [OK]
Hint: Use 'function' keyword to declare functions in PHP [OK]
Common Mistakes:
  • Using 'def' instead of 'function'
  • Adding a colon after 'function'
  • Using 'func' keyword which is not valid in PHP
2. Which of the following is the correct way to call a function named sayHello in PHP?
easy
A. call sayHello();
B. sayHello();
C. sayHello;
D. callFunction(sayHello);

Solution

  1. Step 1: Understand PHP function call syntax

    In PHP, to call a function, you write the function name followed by parentheses, optionally with arguments inside.
  2. Step 2: Identify the correct option

    sayHello(); uses sayHello();, which is the correct way to call the function named sayHello.
  3. Final Answer:

    sayHello(); -> Option B
  4. Quick Check:

    Function call syntax = sayHello(); [OK]
Hint: Call functions by name with parentheses () [OK]
Common Mistakes:
  • Using 'call' keyword which does not exist in PHP
  • Omitting parentheses when calling functions
  • Using incorrect function call syntax like callFunction()
3. What will be the output of the following PHP code?
function add($a, $b) {
    return $a + $b;
}
echo add(3, 4);
medium
A. 7
B. 34
C. add(3, 4)
D. Error

Solution

  1. Step 1: Understand the function behavior

    The function add takes two parameters and returns their sum.
  2. Step 2: Calculate the return value

    Calling add(3, 4) returns 3 + 4 = 7, which is then printed by echo.
  3. Final Answer:

    7 -> Option A
  4. Quick Check:

    3 + 4 = 7 [OK]
Hint: Functions return values; echo prints the result [OK]
Common Mistakes:
  • Concatenating numbers as strings instead of adding
  • Expecting function name to print instead of return value
  • Syntax errors from missing semicolons
4. Identify the error in the following PHP code:
function greet() {
    echo "Hello!";
}
greet;
medium
A. Missing semicolon after function declaration
B. Function name is incorrect
C. Missing parentheses when calling the function
D. Echo statement syntax error

Solution

  1. Step 1: Check function call syntax

    The function greet is declared correctly, but when calling it, parentheses are missing.
  2. Step 2: Understand PHP function call requirements

    In PHP, functions must be called with parentheses, even if they take no arguments. So greet; is invalid; it should be greet();.
  3. Final Answer:

    Missing parentheses when calling the function -> Option C
  4. Quick Check:

    Function calls need () even if no arguments [OK]
Hint: Always use () to call functions, even if empty [OK]
Common Mistakes:
  • Calling functions without parentheses
  • Confusing function declaration with call
  • Missing semicolons elsewhere
5. Consider the following PHP code:
function multiply($x, $y = 2) {
    return $x * $y;
}
echo multiply(5);

What will be the output and why?
hard
A. 0 because default value is ignored
B. 5 because only one argument is passed
C. Error because both parameters are required
D. 10 because the second parameter uses default value 2

Solution

  1. Step 1: Understand default parameter usage

    The function multiply has two parameters, where $y has a default value of 2.
  2. Step 2: Analyze the function call

    Calling multiply(5) passes 5 as $x, and since $y is not provided, it uses the default 2.
  3. Step 3: Calculate the result

    The function returns 5 * 2 = 10, which is printed by echo.
  4. Final Answer:

    10 because the second parameter uses default value 2 -> Option D
  5. Quick Check:

    5 * 2 = 10 with default parameter [OK]
Hint: Default parameters fill missing arguments automatically [OK]
Common Mistakes:
  • Assuming all parameters must be passed
  • Ignoring default values
  • Expecting error when missing arguments
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