3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php function get_between($the_string, $starts_with, $ends_with) { $the_string = substr($the_string,strpos ($the_string , $starts_with)); $temp = explode($starts_with, $the_string); $result_array = array(); $inc = 0; foreach($temp as $a_start_match) { //echo $inc; if (strlen($ends_with) <= strlen($a_start_match)) { echo "testing ".substr($a_start_match, -strlen($ends_with))." against ".$ends_with."\n"; if(substr($a_start_match, -strlen($ends_with)) === $ends_with) { $result_array[$inc]=$a_start_match; $inc++; } } } return $result_array; } $the_string = "some string here string_1---1-----string2 some string here string_1----2----string2 some string here string_1----3----string2"; $a = "string_1"; $b = "string2"; print_R (get_between($the_string,$a,$b));
Output for 4.3.0 - 7.1.0
testing g here against string2 testing g here against string2 testing string2 against string2 Array ( [0] => ----3----string2 )