Me explico, resulta que estaba buscando la forma de autolinkear palabras de un texto de acuerdo a patrones predefinidos
.y llegue a estas dos formas ..
Código PHP:
<?
time_start();
//** FORMA Nº 1*********************************************************************
$_patterns[0] = '/\b(ejemplo)\b/is';
$_replacements[0] = '<a target="_blank" href="http://www.ejemplo.cl" >$1</a>';
$_patterns[1] = '/\b(palabras)\b/is';
$_replacements[1] = '<a target="_blank" href="http://www.palabras.cl" >$1</a>';
$string = 'Ejemplo como autolinkear palabras de un texto';
echo preg_replace($_patterns, $_replacements, $string);
//**********************************************************************************
echo '<br>'.time_end();
echo "<br><br>";
time_start();
//** FORMA Nº 2*********************************************************************
$_palabras['ejemplo']="http://www.ejemplo.cl";
$_palabras['palabras']="http://www.palabras.cl";
$string = 'Ejemplo como autolinkear palabras de un texto';
foreach ($_palabras as $key => $value)
{$string = preg_replace("/\b($key)\b/is", "<a target='_blank' href='$value'>$1</a>", $string);}
echo $string;
//**********************************************************************************
echo '<br>'.time_end();
function time_start() {
global $timeparts,$starttime;
$timeparts = explode(" ",microtime());
$starttime = $timeparts[1].substr($timeparts[0],1);
$timeparts = explode(" ",microtime());
}
function time_end() {
global $timeparts,$starttime;
$endtime = $timeparts[1].substr($timeparts[0],1);
return bcsub($endtime,$starttime,6);
}
?>
Estan son las dos formas, y resulta que la primera se demora en promedio 3 veces más que la segunda
Código HTML:
Ejemplo como autolinkear palabras de un texto 0.000064 Ejemplo como autolinkear palabras de un texto 0.000017
ya que hago un solo preg_replace al cual le paso los array ..
por el contrario en el segundo ejemplo recorro un array y realizo N(tamaño array) llamadas a la funcion preg_replace
por que es esto ?
la segunda forma la cree porque creo que es una forma más entendible de definir las palabras y sus link