Здравствуйте, помогите пожалуйста, пытаюсь найти на сайте все заголовки в тегах h1 и записать их в массив, потом нужно будет эти заголовки записать в базу, поэтому решил к каждому найденному заголовку приписывать точку, что бы по ней потом сделать explode. Но что то не получается, выводится не как мне нужно, видимо дело в цикле, но исправить не выходит, помогите пожалуйста, на вас последняя надежда. Вывод получается такой: Array ( [0] => Библиография [1] => ) Array ( [0] => Знания [1] => ) Array ( [0] => Прикладная лингвистика [1] => ) А нужно что бы выводилось так: Array ( [0] => Библиография [1] => Знания [2] => Прикладная лингвистика ) Сам код ниже: Код (PHP): <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> </html> <?php include("config.php"); include('simple_html_dom.php'); $html = file_get_html('http://studentrggu.ru/'); $data=array(); foreach($html->find('h1') as $hh) { $data=$hh->innertext .="."; $search=explode('.',$data); print_r($search); } ?>
Нестандартный велик Код (PHP): <?php $fgc=file_get_contents('http://studentrggu.ru'); preg_replace_callback('/<h1>(.*?)<\/h1>/' , function($m){ global $ar_h1; $ar_h1[]=$m[1]; } , $fgc) ; print_r($ar_h1); ?>
блин, это просто шикарно!Спасибо большое, INETCHIK Добавлено спустя 44 минуты 52 секунды: INETCHIK, подскажи пожалуйста, почему в таблицу вставляется только одно первое значение, а именно "библиография"? Сам код: for ($i=0; $i <3 ; $i++) { $sql=mysql_query("INSERT INTO `title` (`title_name`) VALUES ('$ar_h1[$i]')"); }
Всё, разобрался, проблема была в том, что в phpmyadmin, когда создавал поле для идентификатора не указал для него AUTO_INCREMENT, поэтому записывалась только нулевая запись и всё. Всем спасибо за помощь.