Created
February 13, 2022 16:07
-
-
Save titomus/be81e6cb2528fe77115d11a9c0637572 to your computer and use it in GitHub Desktop.
GEt String Between
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
function getStringBetween($p_string, $p_from, $p_to, $p_multiple=false){ | |
//checking for valid main string | |
if (strlen($p_string) > 0) { | |
//checking for multiple strings | |
if ($p_multiple) { | |
// getting list of results by end delimiter | |
$result_list = explode($p_to, $p_string); | |
//looping through result list array | |
foreach ( $result_list AS $rlkey => $rlrow) { | |
// getting result start position | |
$result_start_pos = strpos($rlrow, $p_from); | |
// calculating result length | |
$result_len = strlen($rlrow) - $result_start_pos; | |
// return only valid rows | |
if ($result_start_pos > 0) { | |
// cleanying result string + removing $p_from text from result | |
$result[] = substr($rlrow, $result_start_pos + strlen($p_from), $result_len); | |
}// end if | |
} // end foreach | |
// if single string | |
} else { | |
// result start point + removing $p_from text from result | |
$result_start_pos = strpos($p_string, $p_from) + strlen($p_from); | |
// lenght of result string | |
$result_length = strpos($p_string, $p_to, $result_start_pos); | |
// cleaning result string | |
$result = substr($p_string, $result_start_pos+1, $result_length ); | |
} // end if else | |
// if empty main string | |
} else { | |
$result = false; | |
} // end if else | |
return $result; | |
} // end func. get string between | |
//Pour une utilisation simple (renvoie deux): | |
$result = getStringBetweenDelimiters(" one two three ", 'one', 'three'); | |
//Pour obtenir chaque ligne d'une table en tableau de résultats: | |
$result = getStringBetweenDelimiters($table, '<tr>', '</tr>', true); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment