Ayuda con enlaces en php

  • Autor Autor jakmm11
  • Fecha de inicio Fecha de inicio
J

jakmm11

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola amigos del foro, necesito un poco de su ayuda he encontrado este código, para hacer que los enlaces se hagan hipervinculos auto-maticamente.
bien mi pregunta es esta ¿Como hago para cambiar los texto de los enlaces?
PHP:
function url($link){
$link = preg_replace("/([^\w\/])(www\.[a-z0-9\-]+\.[a-z0-9\-]+)/i", "$1http://$2",$link);
$link = preg_replace("/([\w]+:\/\/[\w-?&;#!~=\.\/\@]+[\w\/])/i","<a target=\"_blank\" href=\"$1\">$1</a>",$link);
$link = preg_replace("/([\w-?&;#~=\.\/]+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?))/i","<a href=\"mailto:$1\">$1</a>",$link);
return $link;
}
Espero que me deje entender los explico un poco

Tengo un texto asi:
Este es un enlace de www.mi-enlace.com o tambien http://forobeta.com/ este es un texto simple

Lo que hace este codigo es hacer un auto hipervinculo asi:
Este es un enlace de www.mi-enlace.com o tambien http://forobeta.com/ este es un texto simple

Y lo que yo quiero es cambiar solo el texto pero no el hipervinculo algo asi:
Este es un enlace de enlace o tambien enlace este es un texto simple

Desde ya les Agradezco su ayuda ...Gracias
 
Última edición:
PHP:
function url($link, $texto){ 
$link = preg_replace("/([^\w\/])(www\.[a-z0-9\-]+\.[a-z0-9\-]+)/i", "$1http://$2",$link); 
$link = preg_replace("/([\w]+:\/\/[\w-?&;#!~=\.\/\@]+[\w\/])/i","<a target=\"_blank\" href=\"$1\">{$texto}</a>",$link); 
$link = preg_replace("/([\w-?&;#~=\.\/]+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?))/i","<a href=\"mailto:$1\">{$texto}</a>",$link); 
return $link; 
}
echo url('http://google.com', 'Google');

Así funciona :encouragement:
 
<?php
//str_replace($texto_a_buscar,$cambiar_por,$texto_base,[$cantidad]);---->permite remplazar un bloque texto
// Argumentos
// $texto_a_buscar-------->Texto buscar para sustituir
// $cambiar_por--->Texto por el cual de hace el cambio
// $texto_base---->Texto donde se hace la busqueda y sustitición
// $cantidad------>Indica la cantidad de veces que se deba hacer el cambio
// en el caso que NO EXISTE este parametro, se cambian todos los textos
//Esta función es particularmente útil para remplazar una palabra o trozo de
//texto por otro, ya que dentro del texto indicado en el tercer argumento $texto_base,
//se busca los trozos que coinciden con la cadena indicada en el primer argumento, $texto_a_buscar,
//y los sustituye por la cadena indicada en el segundo argumento $cambiar_por.
//Si en el segundo argumento $cambiar_por indicamos una cadena vacia "", lo que hará la
//función es eliminar del $texto_base los trozos coincidentes con $texto_a_buscar.

echo "<font size='6' color='#AA000A'>";
echo "<br><b>Cambio No 1.....</b>";
echo "</font>";
$texto_base = "La casa es verde, azul y roja; pero la casa de alla es azul";
echo "<br>";
echo $texto_base;
$texto_nuevo = str_replace("azul", "naranja", $texto_base);
echo "<br><br>";
echo "La cadena nueva----->" . $texto_nuevo;




echo "<font size='6' color='#AA000A'>";
echo "<br><b>Cambio No 2.....</b>";
echo "</font>";

$texto_base = "verde, azul, roja y negra. verde, azul, roja y negra. verde, azul, roja y negra. verde, azul, roja y negra.";
echo "<br>";
echo $texto_base;
$cantidad=3;
$texto_nuevo = str_replace("azul", "<b>NARANJA</b>", $texto_base,$cantidad);
echo "<br><br>";
echo "La cadena nueva----->" . $texto_nuevo;

?>

espero que le sirva el ejemplo
 
Atrás
Arriba