записать части строки в массив?

Тема в разделе "PHP", создана пользователем sunyang, 18 май 2011.

Модераторы: latteo
  1. sunyang

    sunyang

    Регистр.:
    25 апр 2009
    Сообщения:
    444
    Симпатии:
    30
    в строке, в которой записан html код страницы нужно найти вот это:
    HTML:
    
    <strong>Product Information</strong>
    <br/>
     Product Size: Size
    <br/>
     Bust :70-90CM Length: 80CM
    <br/>
     Material: Cotton
    <br/>
     Lining: None
    <br/>
     Flexible: Yes
    <br/>
     Other accessories: None
    <br/>
     Origin: China 
    </p>
    
    ..точнее в большой строке (html код) найти содержимое от <strong>Product Information</strong> до первого </p> и записать параметры Product Size, Bust, и.т.д. в массив. и также соответствия этим параметрам (70-90CM, 80CM, Cotton) в другой массив

    Как это можно реализовать?
     
  2. DrakonHaSh

    DrakonHaSh

    Регистр.:
    29 июн 2010
    Сообщения:
    358
    Симпатии:
    122
    в вашем предыдущем топике уже частично ответил.
    тут добавлю что надо бы вам доки по php научится читать и гкглом пользоваться. вопросы спрашиваете базовые для php
     
  3. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    PHP:
    $s '<strong>Product Information</strong>
    <br/>
     Product Size: Size
    <br/>
     Bust :70-90CM Length: 80CM
    <br/>
     Material: Cotton
    <br/>
     Lining: None
    <br/>
     Flexible: Yes
    <br/>
     Other accessories: None
    <br/>
     Origin: China 
    </p>'
    ;

    if(
    preg_match('/<strong>Product Information<\/strong>\s*(.*)\s*<\/p>/is'$s$a)){
        
    preg_match_all('/(Product Size|Bust|Length|Material|Lining|Flexible|Other accessories|Origin)\s*:\s*([^\s]+)/is'$a[1], $b);
        
    print_r($b[1]);
        
    print_r($b[2]);
    }
    на выходе
    Код:
    Array
    (
        [0] => Product Size
        [1] => Bust
        [2] => Length
        [3] => Material
        [4] => Lining
        [5] => Flexible
        [6] => Other accessories
        [7] => Origin
    )
    Array
    (
        [0] => Size
        [1] => 70-90CM
        [2] => 80CM
        [3] => Cotton
        [4] => None
        [5] => Yes
        [6] => None
        [7] => China
    )