"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo puedo convertir URL simples en una cadena en hipervínculos en los que se puede hacer clic con PHP?

¿Cómo puedo convertir URL simples en una cadena en hipervínculos en los que se puede hacer clic con PHP?

Publicado el 2024-12-21
Navegar:133

How can I turn plain URLs in a string into clickable hyperlinks with PHP?

Vincular URL en cadenas con PHP

Vincular URL en cadenas puede ser una tarea útil en PHP para tareas como generar enlaces en los que se puede hacer clic en texto contenido. Un caso de uso común es convertir una cadena simple que contiene URL en HTML con hipervínculos en los que se puede hacer clic.

Sintaxis:

$string = preg_replace(
  "~[[:alpha:]] ://[^<>[:space:]] [[:alnum:]/]~",
  "<a href=\"\\0\">\\0</a>",
  $string
);

Explicación:

  • Patrón de expresiones regulares: El patrón utilizado en preg_replace coincide con cadenas que comienzan con un prefijo de protocolo (por ejemplo, " http://") seguido de uno o más caracteres alfanuméricos, sin incluir corchetes angulares ni espacios en blanco. Termina con caracteres alfanuméricos o una barra diagonal.
  • Cadena de reemplazo: La cadena de reemplazo incluye marcado HTML para crear una etiqueta de anclaje () con la URL coincidente como atributo href y el URL original como contenido de texto.

Ejemplo:

$input = "Look on http://www.google.com";
$output = preg_replace(
  "~[[:alpha:]] ://[^<>[:space:]] [[:alnum:]/]~",
  "<a href=\"\\0\">\\0</a>",
  $input
);

echo $output; // Output: "Look on http://www.google.com"

Versiones de PHP :

Esta solución es compatible con versiones de PHP anteriores a la 5.3 (usando ereg_replace) y PHP 5.3 y posteriores (usando preg_replace).

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3