La verdad es que esa funcion es la leche.. y yo me he topado varias veces con el problema que tienes tu xD.
Ahora suelo utilizar regex tengo una funcion tipo esto:
function desde_hasta($desde,$hasta,$contenido){
$regex = "/$desde(.*?)$hasta/s";
return $match[1];
}
Pero si quiero selecionar el contenido entre <who> y </who> la tengo que llamar al estilo desde_hasta('\<who','\<\/who\>',$contenido); por los delimitadores y todo eso xD..
Asi que arreglando rapidamente la de WHK.. me salio esto:
function desde_hasta($desde, $hasta, $contenido){
$retorno = explode($desde, $contenido); foreach($retorno as $retorn){
$retorn = explode($hasta, $retorn); $retorn = $retorn[0];
$retornar[]=$retorn;
}
return $retornar;
} else {return FALSE;}
}
Si suponemos que $contenido es lo que has citado devolvería algo así:
print_r(desde_hasta('<','>',$content));
Array ( [0] => carlos@gmail.com [1] => luis@perez.com [2] => anita@labonita.net )
Saludos