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

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

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: Кто-нибудь помогите разобраться с массивами, я только начинаю изучать php.
Wet
Отправлено: 12 Декабря, 2012 - 04:18:30
Post Id



Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Дек. 2012  


Помог: 0 раз(а)




В общем есть некая регулярка, в неё вносим два массива: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. Заранее огромное спасибо за помощь)
 
 Top
avtor.fox
Отправлено: 12 Декабря, 2012 - 06:55:53
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2083
Дата рег-ции: Март 2012  
Откуда: Воронеж


Помог: 50 раз(а)




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);


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

(Отредактировано автором: 12 Декабря, 2012 - 07:05:12)

 
 Top
Wet
Отправлено: 12 Декабря, 2012 - 08:29:22
Post Id



Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Дек. 2012  


Помог: 0 раз(а)




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);


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


Приветствую, когда отойдёте ото сна поможете решить задачу)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB