explode splits text into parts, and the parts can be read by index.

delimiter A delimiter is the text that separates pieces before a split.

String Split

separator
string_split.php
Replay: real traced execution (multi-file project)
<?php
$separator = "x";
$text = "red" . $separator . "green" . $separator . "blue";
$count = substr_count($text, $separator) + 1;
$middle = explode($separator, $text)[1];

echo "separator=" . $separator . "\n";
echo "count=" . $count . "\n";
echo "middle=" . $middle . "\n";
<?php
$separator = "y";
$text = "red" . $separator . "green" . $separator . "blue";
$count = substr_count($text, $separator) + 1;
$middle = explode($separator, $text)[1];

echo "separator=" . $separator . "\n";
echo "count=" . $count . "\n";
echo "middle=" . $middle . "\n";
<?php
$separator = "z";
$text = "red" . $separator . "green" . $separator . "blue";
$count = substr_count($text, $separator) + 1;
$middle = explode($separator, $text)[1];

echo "separator=" . $separator . "\n";
echo "count=" . $count . "\n";
echo "middle=" . $middle . "\n";
  1. $separator ← x, $text ← redxgreenxblue, $count ← 3, $middle ← green

    1<?php2$separator→ x = "x"; //@separator="y", "z"3$text→ redxgreenxblue = "red" . $separatorx . "green" . $separator . "blue";4$count→ 3 = substr_count($textredxgreenxblue, $separatorx) + 1;5$middle→ green = explode($separator, $text)[1]green;67echo "separator=" . $separatorx . "\n";8echo "count=" . $count3 . "\n";9echo "middle=" . $middlegreen . "\n";
    outputseparator=x
    count=3
    middle=green
  1. $separator ← y, $text ← redygreenyblue, $count ← 3, $middle ← green

    1<?php2$separator→ y = "y";3$text→ redygreenyblue = "red" . $separatory . "green" . $separator . "blue";4$count→ 3 = substr_count($textredygreenyblue, $separatory) + 1;5$middle→ green = explode($separator, $text)[1]green;67echo "separator=" . $separatory . "\n";8echo "count=" . $count3 . "\n";9echo "middle=" . $middlegreen . "\n";
    outputseparator=y
    count=3
    middle=green
  1. $separator ← z, $text ← redzgreenzblue, $count ← 3, $middle ← green

    1<?php2$separator→ z = "z";3$text→ redzgreenzblue = "red" . $separatorz . "green" . $separator . "blue";4$count→ 3 = substr_count($textredzgreenzblue, $separatorz) + 1;5$middle→ green = explode($separator, $text)[1]green;67echo "separator=" . $separatorz . "\n";8echo "count=" . $count3 . "\n";9echo "middle=" . $middlegreen . "\n";
    outputseparator=z
    count=3
    middle=green