У меня есть эти флажки, чтобы получить его проверенные значения:
В этом примере я ожидал бы получить Ubuntu , потому что он проверен.
<div class="checkbox"> <label for="my_label_3-4"> <input id="my_label_3-4" type="checkbox" value="5" name="my_label_3[]" aria-invalid="false"></input> Windows 7, 8 </label> </div> <div class="checkbox"> <label for="my_label_3-5"> <input id="my_label_3-5" type="checkbox" value="6" name="my_label_3[]" aria-invalid="false"></input> Mac OS </label> </div> <div class="checkbox"> <label for="my_label_3-6"> <input id="my_label_3-6" type="checkbox" checked="" value="7" name="my_label_3[]" aria-invalid="false"></input> Ubuntu </label> </div> <div class="checkbox"> <label for="my_label_3-7"> <input id="my_label_3-7" type="checkbox" value="8" name="my_label_3[]" aria-invalid="false"></input> FreeBSD </label> </div>
Как мне это сделать?
Это то, что я сделал до сих пор, но не получил никакого результата:
echo 'checkbox'; foreach ($html->find('my_label_3') as $id) { echo $id; // returns 'checkbox' }
Использование Simple HTML Dom для процесса синтаксического анализа
попробуйте использовать label
для идентификации узлов, так как Ubuntu не является значением input
. Это текст label
, значение этого input
равно 7.
foreach ($html->find('label[for^="my_label_3-"') as $label) { if (!empty($label.find('input[checked]'))){ echo $label->innertext; } }