Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Как объеденить 2 массива с регулярным выражением?
Форумы портала PHP.SU » » Вопросы новичков » Как объеденить 2 массива с регулярным выражением?

Страниц (1): [1]
 

1. Wet - 12 Декабря, 2012 - 04:18:30 - перейти к сообщению
В общем есть некая регулярка, в неё вносим два массива:1) массив выдающий ссылки с другого сайта (2) массив личных ссылок. Задача:заменить ссылки чужого сайта на свои. Но как бы я не пытался код выдаёт всякую шнягу( Может есть другие варианты решения этой проблемы? Ну и собственно сам код в студию:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2.         $arr = array("<a href='url1'>name1</a>", "<a href=url2>name2</a>");
  3.         for ($j=0; $j<count($arr); $j++)
  4.         {
  5.                 $str=$arr[$j];
  6. }
  7.                 $href = array("1.php", "2.php");
  8.                
  9.                 for ($i=0; $i<count($href); $i++)
  10.                 {$hrefout = $href[$i];
  11.                
  12.                 $res = preg_replace("!<a.*?href=\"?'?([^ \"'>]+)\"?'?.*?>(.*?)</a>!is","<a href='".$hrefout."'>\\1</a>",$str);
  13.                
  14.                 echo"
  15.                            <table>
  16.                                         <tr>Исходный код:
  17.                                                 <td>".htmlspecialchars($res)."</td>
  18.                                         </tr>
  19.                            </table>
  20.                         ";
  21. }
  22.        
  23. ?>

P.S. Заранее огромное спасибо за помощь)
2. avtor.fox - 12 Декабря, 2012 - 06:55:53 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. function replace_href($v){
  2. return str_replace('http', 'http', $v);
  3. }
  4. $nHref = array_map('replace_href', $href);
  5. print_r($nHref);


//Стоп, спросонья не понял задачу полностью Закатив глазки
3. Wet - 12 Декабря, 2012 - 08:29:22 - перейти к сообщению
avtor.fox пишет:
PHP:
скопировать код в буфер обмена
  1. function replace_href($v){
  2. return str_replace('http', 'http', $v);
  3. }
  4. $nHref = array_map('replace_href', $href);
  5. print_r($nHref);


//Стоп, спросонья не понял задачу полностью Закатив глазки


Приветствую, когда отойдёте ото сна поможете решить задачу)

 

Powered by ExBB FM 1.0 RC1