2015-08-24 2 views
-1

У меня есть куча HTML-кода. Внутри этого кода есть некоторые ссылки. Я хочу, чтобы ссылки на файлы добавили target="_blank. Это может быть HTML:Добавить target = "_ blank" в URL-адрес файла

<p> 
    A whale is a big animal. <a href="http://www.example.com/">Here is the proof.</a> 
    <a href="http://www.example.com/whale.jpeg">Also, here's a picture</a> 
</p> 

Как найти и добавить только к .jpeg URL с помощью PHP?

+0

Вы не вставляет его в URL, вы установите его в качестве атрибута «» метки. Это ты имел в виду? – gmcgath

ответ

1

Я не совсем уверен, как вы создаете пример HTML, но если у вас есть свой адрес в переменной вы можете сделать следующее в PHP:

<a href="<?php echo $url; ?>" target="<?php echo strpos($url, '.jpeg') !== FALSE ? '_blank' : '_self'; ?>"></a> 

EDIT

Поскольку у вас нет влияние HTML, который будет создаваться, то это должно помочь:

$html = preg_replace('/\.jpeg\"/', '.jpeg" target="_blank"', $html); 

Где $html содержит HTML-НУ tput из вашего cms.

Если вы хотите поддерживать более одного использования файла окончание этого:

$extensions = array('jpeg', 'jpg', 'png'); 
$html = preg_replace('/(\.(' . implode('|', $extensions) . '))"/', '.jpeg" target="_blank"', $html); 
+0

HTML, который я опубликовал, вытащили из базы данных CMS, поэтому я не могу сделать это так –

+0

Итак, как именно вы хотите изменить html? –

+0

HTML находится в строковой переменной, поэтому, возможно, некоторые регулярные выражения. Если бы я мог ответить, как это сделать, я бы не спросил –

Смежные вопросы