Bird
Raised Fist0
PHPprogramming~20 mins

String split and explode in PHP - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
String Split Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
What is the output of this PHP code using explode()?
Consider the following PHP code snippet. What will be the output when it runs?
PHP
<?php
$str = "apple,banana,cherry";
$result = explode(",", $str);
print_r($result);
?>
AArray ( [0] => apple [1] => banana [2] => cherry )
Bapple,banana,cherry
CArray ( [0] => apple,banana,cherry )
DError: explode() expects parameter 2 to be string
Attempts:
2 left
💡 Hint
explode() splits a string into an array using the delimiter.
❓ Predict Output
intermediate
2:00remaining
What does this PHP code output when splitting with limit?
What will be the output of this PHP code?
PHP
<?php
$str = "one,two,three,four";
$result = explode(",", $str, 3);
print_r($result);
?>
AArray ( [0] => one [1] => two [2] => three [3] => four )
BArray ( [0] => one [1] => two [2] => three,four )
CArray ( [0] => one,two,three,four )
DArray ( [0] => one [1] => two [2] => three )
Attempts:
2 left
💡 Hint
The third parameter limits the number of pieces returned.
🔧 Debug
advanced
2:00remaining
What error does this PHP code raise?
What error will this PHP code produce when run?
PHP
<?php
$str = "a|b|c";
$result = explode('|');
print_r($result);
?>
AWarning: explode() expects 2 parameters, 1 given
BNULL
CFatal error: Uncaught ArgumentCountError
DArray ( [0] => a [1] => b [2] => c )
Attempts:
2 left
💡 Hint
explode() needs both delimiter and string parameters.
❓ Predict Output
advanced
2:00remaining
What is the output of this PHP code using str_split()?
What will this PHP code output?
PHP
<?php
$str = "hello";
$result = str_split($str, 2);
print_r($result);
?>
AError: str_split() expects parameter 2 to be integer
BArray ( [0] => h [1] => e [2] => l [3] => l [4] => o )
CArray ( [0] => he [1] => ll [2] => o )
DArray ( [0] => hel [1] => lo )
Attempts:
2 left
💡 Hint
str_split splits string into chunks of given length.
🧠 Conceptual
expert
2:00remaining
How many elements are in the array after this explode() call?
Given the code below, how many elements does the resulting array have?
PHP
<?php
$str = "one,,three,,five";
$result = explode(",", $str);
?>
A6
B3
C4
D5
Attempts:
2 left
💡 Hint
explode() includes empty strings between consecutive delimiters.

Practice

(1/5)
1. What does the PHP function explode() do?
easy
A. It replaces parts of a string with another string.
B. It joins array elements into a string.
C. It counts the number of characters in a string.
D. It splits a string into an array using a delimiter.

Solution

  1. Step 1: Understand the purpose of explode()

    The explode() function takes a string and splits it into pieces based on a delimiter.
  2. Step 2: Recognize the output type

    It returns an array containing the split parts of the original string.
  3. Final Answer:

    It splits a string into an array using a delimiter. -> Option D
  4. Quick Check:

    explode() = split string to array [OK]
Hint: explode() breaks strings into arrays by delimiter [OK]
Common Mistakes:
  • Confusing explode() with implode() which joins arrays
  • Thinking explode() returns a string instead of an array
  • Assuming explode() modifies the original string
2. Which of the following is the correct syntax to split the string 'apple,banana,orange' by commas using explode()?
easy
A. explode(' ', 'apple,banana,orange')
B. explode('apple,banana,orange', ',')
C. explode(',', 'apple,banana,orange')
D. explode('apple', 'banana,orange')

Solution

  1. Step 1: Identify explode() parameter order

    The first parameter is the delimiter (separator), the second is the string to split.
  2. Step 2: Match parameters to the example

    To split by commas, delimiter is ',' and string is 'apple,banana,orange'. So syntax is explode(',', 'apple,banana,orange').
  3. Final Answer:

    explode(',', 'apple,banana,orange') -> Option C
  4. Quick Check:

    explode(delimiter, string) = explode(',', 'apple,banana,orange') [OK]
Hint: Delimiter is first, string second in explode() [OK]
Common Mistakes:
  • Swapping the order of parameters
  • Using wrong delimiter like space instead of comma
  • Passing parts of string as delimiter
3. What is the output of the following PHP code?
$str = "one,two,three,four";
$result = explode(",", $str, 3);
print_r($result);
medium
A. Array ( [0] => one [1] => two [2] => three,four )
B. Array ( [0] => one [1] => two [2] => three )
C. Array ( [0] => one,two [1] => three [2] => four )
D. Array ( [0] => one [1] => two [2] => three [3] => four )

Solution

  1. Step 1: Understand explode() with limit parameter

    The third parameter limits the number of pieces. Here, limit=3 means maximum 3 parts.
  2. Step 2: Apply limit to splitting

    The string splits at first two commas: 'one', 'two', and the rest 'three,four' stays as last part.
  3. Final Answer:

    Array ( [0] => one [1] => two [2] => three,four ) -> Option A
  4. Quick Check:

    explode(',', string, 3) limits to 3 parts [OK]
Hint: Limit splits into max parts; last part keeps rest [OK]
Common Mistakes:
  • Ignoring the limit parameter effect
  • Expecting all parts split regardless of limit
  • Confusing array keys or values
4. Identify the error in this PHP code snippet:
$data = "red|green|blue";
$colors = explode($data, "|");
print_r($colors);
medium
A. The delimiter "|" is invalid in explode().
B. The delimiter and string parameters are swapped in explode().
C. explode() cannot split strings with pipe characters.
D. print_r() cannot print arrays.

Solution

  1. Step 1: Check explode() parameter order

    explode() expects delimiter first, then the string to split.
  2. Step 2: Analyze given code

    Code uses explode($data, "|"), which swaps parameters incorrectly.
  3. Final Answer:

    The delimiter and string parameters are swapped in explode(). -> Option B
  4. Quick Check:

    explode(delimiter, string) correct order [OK]
Hint: Delimiter always first, string second in explode() [OK]
Common Mistakes:
  • Swapping parameters causing wrong output or errors
  • Thinking delimiter must be a letter only
  • Assuming print_r() can't print arrays
5. You have a string "name:age:city:country". You want to split it into exactly 3 parts where the last part contains everything after the second colon. Which explode() call achieves this?
hard
A. explode(':', $string, 3)
B. explode(':', $string, 2)
C. explode(':', $string, 4)
D. explode(':', $string)

Solution

  1. Step 1: Understand the limit parameter in explode()

    Limit defines max number of parts. If limit=3, explode splits at first two delimiters, last part has rest.
  2. Step 2: Apply to given string

    With limit=3, parts are: 'name', 'age', and 'city:country' combined as last part.
  3. Final Answer:

    explode(':', $string, 3) -> Option A
  4. Quick Check:

    Limit 3 splits into 3 parts, last part keeps rest [OK]
Hint: Use limit=3 to get 3 parts, last part keeps remaining string [OK]
Common Mistakes:
  • Using limit=2 which gives only 2 parts
  • Using no limit which splits all parts
  • Confusing limit with number of delimiters
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