За последние 24 часа нас посетили 21463 программиста и 1698 роботов. Сейчас ищет 1841 программист ...

explode как разбить массив

Тема в разделе "Прочие вопросы по PHP", создана пользователем alcheez, 13 апр 2015.

  1. alcheez

    alcheez Новичок

    С нами с:
    2 апр 2015
    Сообщения:
    6
    Симпатии:
    0
    Здравствуйте, помогите пожалуйста, пытаюсь найти на сайте все заголовки в тегах h1 и записать их в массив, потом нужно будет эти заголовки записать в базу, поэтому решил к каждому найденному заголовку приписывать точку, что бы по ней потом сделать explode. Но что то не получается, выводится не как мне нужно, видимо дело в цикле, но исправить не выходит, помогите пожалуйста, на вас последняя надежда.
    Вывод получается такой:
    Array ( [0] => Библиография [1] => ) Array ( [0] => Знания [1] => ) Array ( [0] => Прикладная лингвистика [1] => )
    А нужно что бы выводилось так:
    Array ( [0] => Библиография [1] => Знания [2] => Прикладная лингвистика )
    Сам код ниже:
    Код (PHP):
    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta charset="utf-8">
    5.     <title></title>
    6. </head>
    7. <body>
    8.  
    9. </body>
    10. </html>
    11. <?php
    12.  
    13.  
    14. include("config.php");
    15. include('simple_html_dom.php');
    16. $html = file_get_html('http://studentrggu.ru/');
    17. $data=array();
    18. foreach($html->find('h1') as $hh) {
    19.     $data=$hh->innertext .=".";
    20.     $search=explode('.',$data);
    21.     print_r($search);
    22. }
    23. ?>
     
  2. INETCHIK

    INETCHIK Активный пользователь

    С нами с:
    13 фев 2014
    Сообщения:
    35
    Симпатии:
    0
    Нестандартный велик
    Код (PHP):
    1. <?php
    2. $fgc=file_get_contents('http://studentrggu.ru');
    3. preg_replace_callback('/<h1>(.*?)<\/h1>/' ,
    4. function($m){ global $ar_h1; $ar_h1[]=$m[1]; } ,
    5. $fgc) ;
    6. print_r($ar_h1);
    7. ?>
     
  3. alcheez

    alcheez Новичок

    С нами с:
    2 апр 2015
    Сообщения:
    6
    Симпатии:
    0
    блин, это просто шикарно!Спасибо большое, INETCHIK

    Добавлено спустя 44 минуты 52 секунды:
    INETCHIK, подскажи пожалуйста, почему в таблицу вставляется только одно первое значение, а именно "библиография"?
    Сам код:

    for ($i=0; $i <3 ; $i++) {
    $sql=mysql_query("INSERT INTO `title` (`title_name`) VALUES ('$ar_h1[$i]')");
    }
     
  4. INETCHIK

    INETCHIK Активный пользователь

    С нами с:
    13 фев 2014
    Сообщения:
    35
    Симпатии:
    0
    Извини, не умею работать с БД
     
  5. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    Покажи, что выводит print_r($ar_h1)
     
  6. alcheez

    alcheez Новичок

    С нами с:
    2 апр 2015
    Сообщения:
    6
    Симпатии:
    0
    Всё, разобрался, проблема была в том, что в phpmyadmin, когда создавал поле для идентификатора не указал для него AUTO_INCREMENT, поэтому записывалась только нулевая запись и всё.
    Всем спасибо за помощь.