PHP - String Explode
The PHP function explode lets you take a string and blow it up into smaller pieces. For example,
if you had a sentence you could ask explode to use the sentence's spaces " " as dynamite and it would blow
up the sentence into separate words, which would be stored in an array. The sentence "Hello, I would like to lose weight." would
look like this after explode got done with it:
- Hello,
- I
- would
- like
- to
- lose
- weight.
The dynamite (the space character) disappears, but the other stuff remains, but in pieces. With that
abstract picture of the explode function in mind, lets take a look at how it really works.
The explode Function
The first argument that explode takes is the delimiter (our dynamite) which is used to blow up
the second argument, the original string. explode returns an array of string pieces from the
original and they are numbered in order, starting from 0. Lets take a phone number in the form ###-###-####
and use a hyphen "-" as our dynamite to split the string into three separate chunks.
PHP Code:
$rawPhoneNumber = "800-555-5555";
$phoneChunks = explode("-", $rawPhoneNumber);
echo "Raw Phone Number = $rawPhoneNumber <br />";
echo "First chunk = $phoneChunks[0]<br />";
echo "Second chunk = $phoneChunks[1]<br />";
echo "Third Chunk chunk = $phoneChunks[2]";
Display:
Raw Phone Number = 800-555-5555
First chunk = 800
Second chunk = 555
Third Chunk chunk = 5555
explode Function - Setting a Limit
If you want to control the amount of destruction that explode can wreak on your original string, consider
using the third (optional) argument which allows you to set the number of pieces explode can return. This means
it will stop exploding once the number of pieces equals the set limit. Below we've blown up a sentence with no limit and then
with a limit of 4.
PHP Code:
$someWords = "Please don't blow me to pieces.";
$wordChunks = explode(" ", $someWords);
for($i = 0; $i < count($wordChunks); $i++){
echo "Piece $i = $wordChunks[$i] <br />";
}
$wordChunksLimited = explode(" ", $someWords, 4);
for($i = 0; $i < count($wordChunksLimited); $i++){
echo "Limited Piece $i = $wordChunksLimited[$i] <br />";
}
Display:
Piece 0 = Please
Piece 1 = don't
Piece 2 = blow
Piece 3 = me
Piece 4 = to
Piece 5 = pieces.
Limited Piece 0 = Please
Limited Piece 1 = don't
Limited Piece 2 = blow
Limited Piece 3 = me to pieces.
The limited explosion has 4 pieces (starting from 0, ending at 3). If you
forgot how a for loop works, check out PHP For Loops.
Download Tizag.com's PHP Book
If you would rather download the PDF of this tutorial, check out our
PHP eBook from the Tizag.com store.
Print it out, write all over it, post your favorite lessons all over your wall! Found Something Wrong in this Lesson?Report a Bug or Comment on This Lesson - Your input is what keeps Tizag improving with time! |