PHP – String – Devolver derecha hasta delimitador izquierda
Función que devuelve la parte derecha de un texto a partir de un delimitador que se empieza a buscar desde la izquierda. Si no se encuentra el delimitador, devuelve null,
Es insensible a mayúsculas, minúsculas y acentos.
/**
* Class HelperString
*/
abstract class HelperString
{
/**
* Devuelve la parte de la derecha despues de un texto delimitador
* que se busca desde la izquierda.
* No devuelve el delimitador
*
* @param $texto
* @param $delimitador
*
* @return string
*/
public static function getRightStringBack($texto, $delimitador)
{
$txtTmp = HelperString::eliminarAcentos($txt);
$delimitador = HelperString::eliminarAcentos($delimitador);
$pos = stripos($txtTmp, $delimitador);
$ret = '';
if (false !== $pos) {
/* Busca el delimitador partiendo de la izquierda
y si lo encuentra devuelve la parde de la la derecha */
$ret = substr($texto, ($pos + strlen($delimitador)));
if ($ret === false) {
return null;
}
}
return $ret;
}
}
Ejemplos:
$a = HelperString::getRightStringBack("abcdefghijklm", "d");
/* $a = (string:9) efghijklm */
$a = HelperString::getRightStringBack("abcdefghijklm", "def");
/* $a = (string:7) ghijklm */
$a = HelperString::getRightStringBack("abcdefghijklm", "djk");
/* $a = (string:0) */
$a = HelperString::getRightStringBack("abcdefghijklm", "");
/* $a = (string:0) */
$a = HelperString::getRightStringBack("abcdefghijklm", "xx");
/* $a = (string:0) */
