|
|
|
| Ситуация такая есть набор ссылок(даже не ссылок а изображений с jsом) вида.
<img onclick="window.open('/show_pic.php?path=/UserFiles/9_20031.jpg','','resizable=no,location=no,menubar=no,scrollbars=no,status=no,toolbar=no,fullscreen=no,dependent=no')" height="120" alt="" hspace="2" width="180" vspace="2"src="/UserFiles/19919.jpg"/><img onclick="window.open('/show_pic.php?path=/UserFiles/7_20032.jpg','','resizable=no,location=no,menubar=no,scrollbars=no,status=no,toolbar=no,fullscreen=no,dependent=no')" height="120" alt="" hspace="2" width="180" vspace="2" src="/UserFiles/19922.jpg" />
|
Что я хочу, я хочу убрать весь онклик, и поместить картинки в тэг
<а href="тут ссылка на картинку в js"></a>
|
Все ссылки которые находятся в window.open() у меня уже есть, я их выбирал раньше.
Вот что у меня получается. Например для ссылки $oldPath
<?
$oldPath = '/show_pic.php?path=/UserFiles/9_20031.jpg';
$newPath= 'тут какая то ссылка';
$symbol = array(".", "/", "?");
$slashed_symbol = array("\.", "\/", "\?");
$slachedPath = str_replace($symbol, $slashed_symbol, $oldPath);
$pattern= '%<img\s*onclick="window\.open\(\''.$slachedPath.'\'.*[^"]\)"%isU';
$out2 = preg_replace($pattern, '<a href="'.$newPath.'"><img', $body);
?>
|
<a href="тут какая то ссылка"><img height="120" alt="" hspace="2" width="180" vspace="2"src="/UserFiles/19919.jpg"/><img onclick="window.open('/show_pic.php?path=/UserFiles/7_20032.jpg','','resizable=no,location=no,menubar=no,scrollbars=no,status=no,toolbar=no,fullscreen=no,dependent=no')" height="120" alt="" hspace="2" width="180" vspace="2" src="/UserFiles/19922.jpg" />
|
Тоесть мне либо надо пройтись так по всем ссылкам, а потом закрыть тэг <a> после картинки, либо сразу как то менять js и "заключать" весь <img> в ссылку.
Пробовал написал выражение заменять все /> если дальше не идет </a> но тут явно чтото не так.
<?
$body = preg_replace('%\/>!</a>%isU', '/></a>', $out2);
?>
|
| |
|
|