Jump to content


Pj Pedrosa

Member Since 10/02/2010
Offline Last Active 12/02/2010, 17:53
-----

Topics I've Started

Regex Para Alterar Links Com Preg_Replace

10/02/2010, 23:55

Olá, pessoal!

Esta é minha primeira mensagem neste fórum.

Estou com o seguinte problema: criei um script que lê uma página externa (via file_get_contents). Minha ideia é inserir o conteúdo dessa página num banco de dados, mas nesse conteúdo existem algumas tags <img> e <a> com referências para arquivos locais. Então, preciso modificar o endereço dessas imagens e links para que elas apontem para o site original. Por exemplo:

Ao ler a página externa, tenho as seguintes tags:

<a href="arquivo-local.php">Link</a>
<img src="imagens/local.png" alt="Imagem" />

E, antes de inserir no banco de dados, preciso alterar para:

<a href="http://www.foo.com.br/arquivo-local.php" target="_blank">Link</a>
<img src="http://www.foo.com.br/imagens/local.png" alt="Imagem" />

Resumindo: preciso encontrar apenas os <a> e <img> com referências locais (existem alguns com referências externas tb) e inserir o endereço do site original neles.

Sei que preciso usar uma regex para fazer a substituição com preg_replace, mas não estou conseguindo acertar na regex :(

Alguém poderia ajudar?

IPB Skin By Virteq