Función PHP , devuelve un array con los elementos de un texto separado por tags

Función que devuelve un array con los elementos de un texto separado por tags del tipo

ejem si el texto es
#tag1# este es el primer comentario #tag1#
#tag2# Este es otro comentario #tag2#
la funcion retorna un array del tipo
array[tag1]=”este es el primer comentario”;
array[tag2]=”Este es otro comentario”;

function getParts($texto)
{
	$resarray=Array();
	$txtarray=Array();
	$minpos=0;
	$txtarray[]="tag1"; // se definen los tag a reconocer
	$txtarray[]="tag2"; // tantos como se quieran
	$txtarray[]="tag3";
	$txtarray[]="tag4";
	
	foreach ($txtarray as $key=>$value)
	{
		$posini=strpos($texto,'#'.$value.'#');
		$posfin=strpos($texto,'#'.$value.'#',$posini+1);
		if($posini!==false && $posfin!==false && $posfin>$posini)
		{
			if ($minpos>$posini || $minpos==0)
				{$minpos=$posini;}
			$resarray[$value]= substr($texto,$posini +strlen($value)+2,$posfin-$posini-strlen($value)-2);
		}
		if($minpos!=0)		
		{$resarray['body']= substr($texto,0,$minpos);}
	}
	return $resarray;
}
This entry was posted in PHP. Bookmark the permalink.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>