2015-03-06 4 views
0

у меня есть следующий фрагмент кода HTML:PHP SimpleHTMLDOM: как получить значение из div по имени класса внутри другого div?

<div class="price-box szczeg_oper"> 
      <div class="row"> 
       <div class="col c-1-2 c-xs-1-1"> 
       <div class="price netto">cena: 11.30 <span class="currency">CZK</span></div>    <div class="ad_koszyk row"> 
      <div class="col c-1-2 c-xs-1-2"> 
      <div class="quantity lng_cz">   
       <label>množství</label> 
       <input type="text" size="1" id="quantity_178" name="quantity" value="1" data-cip-id="quantity_178"> 
      </div> 
      </div> 
      <div class="col c-1-2 c-xs-1-2"> 
      <input type="hidden" name="parametersValue" value=""> 
      <input class="button pull-right" name="przyciskz" type="submit" value="Do košíku" onclick="ajax_cart_add(178, jQuery('#quantity_178').val(), 'cz', 0.115); return false;"> 
      </div> 
     </div>    </div> 
       <div class="col c-1-2 c-xs-1-1"> 
           <div class="product-availability">Zboží je k dispozici na skladě</div> 
       </div> 
      </div> 
      </div> 

Я пытаюсь получить значение внутри дел.

Div с тем же классом содержится в документе несколько раз. Поэтому мне нужно, чтобы получить только эту одну внутреннюю часть DIV

Если я попытался это:

//GET NETTO PRICE 
    foreach($html->find('div[class=price-box szczeg_oper]') as $element){ 
     $itemPrice = $element->plaintext; 
    } 

Я получил текст всего дел.

Как я могу получить доступ к внутренним элементам внутри найденного div по классу?

Я пытался найти решение в документации, но без везения:

http://simplehtmldom.sourceforge.net/manual.htm

Большое спасибо за любые советы

+0

Вам НУЖНО использовать PHP для этого? Если вы просто хотите получить один из внутренних div, вы можете использовать javascript [GetElementsByClassName] (http://www.w3schools.com/jsref/met_document_getelementsbyclassname.asp) – Eda190

+1

Да, мне нужно использовать PHP – redrom

ответ

3

Я предполагаю, что вы после того, как цена

foreach($html->find('div[class=price-box szczeg_oper]') as $element){ 
    $itemPrice = $element->find('.price',0)->plaintext; 
} 
+0

Недопустимый аргумент, предоставленный для foreach () – redrom

+0

Отредактировав мой ответ, если это не правильно, будьте более конкретны в отношении того, какие данные вы ищете в своем примере html – arcanine

+0

Спасибо, теперь он работает правильно. – redrom

Смежные вопросы