Bird
Raised Fist0
PHPprogramming~5 mins

Case conversion functions in PHP - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Case conversion functions
O(n)
Understanding Time Complexity

We want to understand how the time it takes to change text case grows as the text gets longer.

How does the program's work increase when we convert bigger strings?

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


$string = "Hello World!";
$lower = strtolower($string);
$upper = strtoupper($string);

// Convert each character to lowercase and uppercase

This code converts a string to all lowercase and all uppercase letters.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: The functions check each character in the string one by one.
  • How many times: Once for each character in the string.
How Execution Grows With Input

As the string gets longer, the work grows in a straight line with the number of characters.

Input Size (n)Approx. Operations
10About 10 character checks
100About 100 character checks
1000About 1000 character checks

Pattern observation: Doubling the string length roughly doubles the work.

Final Time Complexity

Time Complexity: O(n)

This means the time to convert case grows directly with the string length.

Common Mistake

[X] Wrong: "Changing case is instant no matter the string size."

[OK] Correct: Each character must be checked and changed, so longer strings take more time.

Interview Connect

Understanding how simple string operations scale helps you explain efficiency clearly and confidently.

Self-Check

"What if we changed the string to an array of words and converted each word's case separately? How would the time complexity change?"

Practice

(1/5)
1. Which PHP function converts all letters in a string to uppercase?
$text = "hello world";
easy
A. strtoupper()
B. strtolower()
C. ucfirst()
D. ucwords()

Solution

  1. Step 1: Understand the function purpose

    strtoupper() converts all characters in a string to uppercase letters.
  2. Step 2: Compare with other functions

    strtolower() makes all letters lowercase, ucfirst() capitalizes only the first letter, and ucwords() capitalizes the first letter of each word.
  3. Final Answer:

    strtoupper() -> Option A
  4. Quick Check:

    Uppercase function = strtoupper() [OK]
Hint: All uppercase letters? Use strtoupper() [OK]
Common Mistakes:
  • Confusing strtoupper() with strtolower()
  • Using ucfirst() to uppercase whole string
  • Using ucwords() for full uppercase
2. Which of the following is the correct syntax to convert a string to lowercase in PHP?
$str = "HELLO";
easy
A. strtolower->$str();
B. strtolower $str;
C. strtolower($str);
D. strtolower{$str};

Solution

  1. Step 1: Identify correct function call syntax

    In PHP, functions are called with parentheses enclosing arguments, like functionName(argument);.
  2. Step 2: Check each option

    strtolower($str); uses correct syntax: strtolower($str);. Others have syntax errors or invalid usage.
  3. Final Answer:

    strtolower($str); -> Option C
  4. Quick Check:

    Function call syntax = strtolower($str); [OK]
Hint: Function calls need parentheses around arguments [OK]
Common Mistakes:
  • Missing parentheses in function call
  • Using arrow or braces incorrectly
  • Confusing function call with variable access
3. What is the output of the following PHP code?
$name = "john doe";
echo ucfirst($name);
medium
A. John doe
B. john Doe
C. JOHN DOE
D. john doe

Solution

  1. Step 1: Understand ucfirst() behavior

    ucfirst() capitalizes only the first character of the entire string, leaving the rest unchanged.
  2. Step 2: Apply to given string

    Input is "john doe". After ucfirst(), it becomes "John doe" (only first letter capitalized).
  3. Final Answer:

    John doe -> Option A
  4. Quick Check:

    ucfirst("john doe") = "John doe" [OK]
Hint: ucfirst() capitalizes only first letter of whole string [OK]
Common Mistakes:
  • Expecting all words capitalized
  • Confusing ucfirst() with ucwords()
  • Assuming it converts whole string to uppercase
4. The following PHP code is intended to capitalize the first letter of each word in a string, but it does not work as expected:
$text = "hello world";
echo ucfirst($text);

What is the correct fix?
medium
A. Replace ucfirst() with strtoupper()
B. Replace ucfirst() with ucwords()
C. Replace ucfirst() with strtolower()
D. No fix needed, code is correct

Solution

  1. Step 1: Identify function behavior

    ucfirst() capitalizes only the first letter of the entire string, not each word.
  2. Step 2: Choose function to capitalize each word

    ucwords() capitalizes the first letter of every word in the string.
  3. Final Answer:

    Replace ucfirst() with ucwords() -> Option B
  4. Quick Check:

    Capitalize each word = ucwords() [OK]
Hint: Use ucwords() to capitalize first letter of each word [OK]
Common Mistakes:
  • Using ucfirst() instead of ucwords()
  • Using strtoupper() which uppercases all letters
  • Thinking code is already correct
5. You have a string with mixed case: $input = "hElLo WoRLd";. You want to convert it so that only the first letter of each word is uppercase and the rest are lowercase. Which PHP code achieves this?
hard
A. $output = ucfirst(strtolower($input));
B. $output = strtoupper(ucwords($input));
C. $output = strtolower(ucfirst($input));
D. $output = ucwords(strtolower($input));

Solution

  1. Step 1: Normalize string to lowercase

    Use strtolower() to convert all letters to lowercase first, so mixed case is fixed.
  2. Step 2: Capitalize first letter of each word

    Apply ucwords() to capitalize the first letter of every word in the now lowercase string.
  3. Final Answer:

    $output = ucwords(strtolower($input)); -> Option D
  4. Quick Check:

    Lowercase then ucwords() = desired format [OK]
Hint: Lowercase first, then ucwords() for title case [OK]
Common Mistakes:
  • Applying ucwords() before strtolower()
  • Using strtoupper() which uppercases all letters
  • Using ucfirst() which only capitalizes first letter of string
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