Table of contents
1.
Introduction 
2.
What is Explode in PHP?
2.1.
Syntax 
2.2.
Parameters for the PHP explode() Function
2.2.1.
1. $delimiter (Required) 
2.2.2.
2. $string (Required) 
2.2.3.
3. $limit (Optional) 
2.2.4.
Default Behavior When $limit is Not Provided
3.
How to use Explode in PHP?
3.1.
Code 
4.
PHP Explode Code Examples
4.1.
Example 1: Splitting a string into an array based on space
4.2.
Example 2: Limiting the number of elements in the array
5.
Connecting Explode with Other PHP String Functions
5.1.
Using implode() with explode()
6.
Best Practices for Using Explode in PHP
7.
Common Mistakes to Avoid When Using Explode in PHP
8.
Explode vs. Implode
9.
PHP explode() vs Other String Functions
10.
Explode PHP Libraries and Frameworks
11.
Frequently Asked Questions
11.1.
What is explode () in PHP?
11.2.
What is the difference between explode and split in PHP?
11.3.
How to explode a file in PHP?
11.4.
How to explode a URL in PHP?
11.5.
Is explode deprecated in PHP?
11.6.
Why use explode?
12.
Conclusion
Last Updated: Jan 18, 2025
Easy

PHP explode() Function

Career growth poll
Do you think IIT Guwahati certified course can help you in your career?

Introduction 

PHP  a popular server-side scripting language, is highly versatile for dynamic web development. Among its rich library of functions, the explode() function stands out for its role in efficient string manipulation. In this article, we’ll explore the PHP explode() function in detail.

PHP explode

What is Explode in PHP?

The explode() function in PHP is a built-in function that splits a string into an array of substrings based on a specified delimiter. It is widely used to divide a string into smaller parts, making it easier to work with individual elements.

In simpler terms, the explode() function breaks a string into smaller pieces wherever the specified delimiter is found. These pieces are then stored as elements in an array.

Syntax 

The syntax of the explode() function is:

array explode(string $delimiter, string $string, int $limit = PHP_INT_MAX)


Here's a breakdown of the parameters:
 

  • $delimiter: The character or sequence of characters that you want to use as the delimiter.
     
  • $string: The string you want to split into an array.
     
  • $limit: The maximum number of elements to include in the resulting array.

Parameters for the PHP explode() Function

The explode() function in PHP accepts three parameters, of which two are mandatory and one is optional. Here's a detailed explanation of each parameter:

1. $delimiter (Required)
 

  • Type: string
     
  • This specifies the boundary or separator at which the input string will be split. Whenever the delimiter appears in the string, it marks the end of one array element and the start of another.
     
  • If the delimiter is not found in the string, the function returns the entire string as the first element of the array.

2. $string (Required)
 

  • Type: string
     
  • The input string that you want to split into an array. This is the main content that gets divided based on the $delimiter.

3. $limit (Optional)
 

  • Type: int (Default: PHP_INT_MAX)
     
  • Specifies the maximum number of elements the resulting array can contain. Its behavior changes depending on the value:
    • Positive Value (N):
      • The array will contain at most N elements.
         
      • If the input string contains more parts than N, the first N-1 elements will be split as per the delimiter, and the remainder of the string will form the last element.
         
    • Negative Value (N):
      • The last N elements of the array will be excluded, and the rest will be returned.
         
      • For example, if -2 is passed, the last two segments of the split array will be trimmed off.
    • Zero (0):
      • Returns an empty array, as the value 0 indicates no elements should be returned.
         

Default Behavior When $limit is Not Provided

If $limit is not specified, the entire input string is split based on the $delimiter, and the resulting array contains all possible parts.

Let us now discuss how we can use the explode() in our code: 

How to use Explode in PHP?

Using the explode() function in PHP is straightforward. 

  • First, you need to specify the delimiter that you will be using to split the string. 
     
  • Then you need to provide the string you want to split. 
     
  • Finally, you can optionally specify the maximum number of elements to include in the resulting array.
     

For example, consider the following code:

Code 

<?php

$string = "apple,banana,orange,grape";
$delimiter = ",";
$fruits = explode($delimiter, $string);
print_r($fruits);

?>


In this example, we're splitting the $string variable into an array using a comma ($delimiter). 

After running the explode() function, this code will output the following:


Output

Array
(
  [0] => apple
  [1] => banana
  [2] => orange
  [3] => grape
)

PHP Explode Code Examples

Let's explore some more examples of how to use the explode() function in PHP.

Example 1: Splitting a string into an array based on space

Let's take a simple example to split the string of fruit names to give an array of individual names based on the space between each name.

Code in php

<?php

$string = "apple,banana,orange,grape";
$delimiter = " ";
$fruits = explode($delimiter, $string);

print_r($fruits);

?>


Output 

Array
(
    [0] => apple,banana,orange,grape
)

 

Explanation

  • Here, the explode() function tries to split the string $string into an array of substrings based on the delimiter ", "which is a space character. 
     
  • However, since the original string does not contain any spaces, the resulting array $fruits contain only a single element, which is the original string itself. 

Example 2: Limiting the number of elements in the array

Let's take a look at an example where we take a string of fruit names and then split them into an array in such a way that the first element of the array is the first fruit name we get and the second element has the rest of the names.

Code in php

<?php

$options = "apple,banana,orange,grape";
$delimiter = ",";
$fruits = explode($delimiter, $string, 2);

print_r($fruits);
?>


Output

Array
(
    [0] => apple
    [1] => banana,orange,grape
)

 

Explanation 

  • Here, the explode() function splits the string $options into substrings based on the delimiter "," which is a comma, and puts them in an array. 
     
  • The third parameter of explode() is set to 2, which limits the number of elements in the resulting array to 2. 
     
  • Therefore, the resulting array $fruits contains two elements: the first element is "apple," and the second element is "banana, orange, grape."

Connecting Explode with Other PHP String Functions

The explode() function is a powerful tool for string manipulation in PHP. Its real potential is unlocked when combined with other PHP string functions like implode().

One common use case is combining explode() and implode() to split a string into an array and then rejoin it into a single string with a different delimiter.

Using implode() with explode()

The implode() function is essentially the opposite of explode(). It takes an array of strings and combines them into a single string using a specified delimiter.

Here’s an example of how to use implode() with explode():

Code in Php

<?php

$options = "apple,banana,orange,grape";

// Define the delimiter as a comma
$delimiter = ",";

// Use explode() to split the string into an array of fruit names
$fruits = explode($delimiter, $options);

// Use implode() to join the fruit names back together with " and " as the separator
$new_string = implode(" and ", $fruits);

// Output the new string
echo $new_string;

?>


Output

apple and banana and orange and grape

 

Explanation

Breaking the String with explode():
The explode() function splits the $options string into smaller substrings based on the specified delimiter ",". The resulting array, $fruits, contains each fruit as a separate element.

Joining with implode():
The implode() function combines the elements of the $fruits array into a single string, using " and " as the delimiter. The final string is assigned to $new_string and displayed as output.

Best Practices for Using Explode in PHP

To ensure the best performance and avoid errors while using the explode() function, consider the following tips:

  • Validate Input Strings:
    Ensure the input string is in the expected format before using explode() to avoid unexpected results.
     
  • Consistent Delimiters:
    Use consistent delimiters throughout your application to maintain clarity and prevent parsing errors.
     
  • Clean Input with trim():
    Use the trim() function to remove any extra whitespace or unwanted characters from the input string before calling explode().

Common Mistakes to Avoid When Using Explode in PHP

Here are some mistakes to avoid while using the explode() function in PHP:

  • Not specifying the delimiter correctly: Make sure you specify the correct delimiter when using explode(). If you're not sure what the delimiter should be, review the input string to identify a consistent pattern.
     
  • Not validating the input string: Always validate the input string to ensure it meets your expectations before using explode().
     
  • Not checking the return value: The explode() function returns an array. Always check the return value to ensure the function is executed correctly and the array contains the expected elements.

Explode vs. Implode

explode()implode()
The explode() function splits a string into an array of substrings based on a specified delimiter.The implode() function joins the elements of an array into a single string, with a specified delimiter between them.
It accepts parameters such as a delimiter, the string to split, and an optional limit on the number of elements in the resulting array.It takes a delimiter and an array as parameters and returns a string formed by concatenating the array elements with the delimiter.
The output of explode() is an array consisting of the substrings obtained by splitting the original string.The output of implode() is a single string that consists of the array elements joined together by the delimiter.
explode() is useful when you need to break down a string into smaller parts, such as splitting a sentence into words or parsing CSV data.implode() is commonly used when you need to combine an array of strings into a single string, such as constructing a sentence or creating a query string.
The limit parameter in explode() restricts the number of substrings returned by the function.implode() does not have a limit parameter to restrict the number of elements in the resulting string.
The return type of explode() is an array, with each element containing a substring from the original string.implode() returns a string that is the concatenation of all elements in the array, separated by the delimiter.
If the input string is empty, explode() returns an array with one empty string.If the input array is empty, implode() returns an empty string.
explode() may be slower when working with very large strings or when the limit is used to restrict the number of elements.implode() is typically faster, especially when dealing with large arrays of simple strings.

PHP explode() vs Other String Functions

PHP provides several string manipulation functions that you can use to achieve different tasks. Here are some other string manipulation functions in PHP and how they compare to explode():

  • substring (): Returns a portion of a string based on a starting index and length.
     
  • str_replace(): Replaces all occurrences of a string with another string.
     
  • strpos(): Used to return the position of the first occurrence of a substring in a string.
     
  • preg_split(): Splitting a string into an array by using a regular expression pattern as the delimiter.


Each of these functions serves a specific purpose, and you should choose the function that best suits your needs based on the task at hand.

Explode PHP Libraries and Frameworks

PHP provides a wealth of libraries and frameworks that can help you with string manipulation and other tasks. Here are some popular PHP libraries and frameworks that include string manipulation functions:

  • Laravel: A powerful PHP web application framework that provides a variety of string manipulation functions, including explode().
     
  • Symfony: A robust PHP framework that includes a variety of string manipulation functions.
     
  • Zend Framework: A collection of PHP packages that includes a variety of string manipulation functions.

Must Read PHP Projects With Source Code

Frequently Asked Questions

What is explode () in PHP?

The explode() method in PHP is used to divide a string according to a given delimiter into an array. Every time the delimiter is encountered, the input string is divided into substrings, creating an array of those substrings.

What is the difference between explode and split in PHP?

In PHP, split() (deprecated as of PHP 5.3.0) splits a string using a regular expression as the separator, whereas explode() breaks a string into an array using a delimiter. For easier scenarios, use explode(); for regex, use preg_split().

How to explode a file in PHP?

In PHP, to explode a file, read its contents into a string using file_get_contents(), and then apply explode() to that string with a designated delimiter. As a result, the content is divided into a number of substrings.

How to explode a URL in PHP?

Use PHP's parse_url() function to explode a URL into its constituent parts (scheme, host, path, etc.) in order to explode the URL. The path component can then be further segmented if necessary by applying explode() to it.

Is explode deprecated in PHP?

No, explode() is not deprecated in PHP. It remains a widely used function to split strings into arrays based on a specified delimiter.

Why use explode?

explode() is used to split a string into an array based on a specified delimiter, making it useful for processing and manipulating text data efficiently.

Conclusion

In summary, the explode() function is a powerful tool for string manipulation in PHP. By splitting a string into an array based on a specified delimiter, you can extract specific elements of a string and manipulate them as needed.

Want to learn more concepts like PHP explode, no worries, Coding Ninjas has you covered. Refer to functions in phpPHP Arrays - Coding Ninjas, Php-installation.

Live masterclass