Как анализировать значения строк из tr table html? [Дубликат]

Я, пожалуй, единственный человек, у которого была какая-то проблема, но я все равно отказался. Я хотел попытаться сделать мой скрипт асинхронным только для удовольствия. Тогда я забыл об этом, и когда я вышел в прямом эфире, файл [custom] .js загрузился только 50% времени перед jQuery.js.

Итак, я изменил

<script async src="js/script.js"></script>

to

<script src="js/script.js"></script>

:)

6
задан kapa 28 February 2012 в 10:13
поделиться

5 ответов

XPath является стандартом для запросов к структурам XML.

Однако обратите внимание, что если вы хотите проанализировать HTML из ненадежного источника, это источник, где HTML не совсем хорошо сформирован, вы должны предпочесть DOMDocument::loadHTML() на Варианты SimpleXML , в частности simplexml_load_string .

Для примера

<?php
$html = '
<div id="btn-loc" class="hidden" attrLoc="1">
  ...
</div>';

$doc = DOMDocument::loadHTML($html);
$xpath = new DOMXPath($doc);
$query = "//div[@id='btn-loc']";
$entries = $xpath->query($query);
foreach ($entries as $entry) {
  echo "Found: " . $entry->getAttribute("attrloc");
}

Надеюсь, что это поможет!

8
ответ дан Mikhail 24 August 2018 в 04:41
поделиться

Использование jQuery в JavaScript

var state = $('#btn-loc').attr('attrLoc');

Затем вы можете отправить значение в PHP

EDIT:

Если вы работаете с HTML-страницей / DOM в PHP вы можете использовать SimpleXML для перемещения DOM и потянуть ваши атрибуты таким образом

$xml = simplexml_load_string(
    '<div id="btn-loc" class="hidden" attrLoc="1">
    ...
    </div>'
);

foreach (current($xml->xpath('/*/div'))->attributes() as $k => $v)
{
    var_dump($k,' : ',$v,'<br />');
}

Вы увидите имя и значение атрибутов, сброшенных

id : btn-loc
class : hidden
attrLoc : 1
4
ответ дан darryn.ten 24 August 2018 в 04:41
поделиться

Вы также можете использовать Document Object Model

<?php
$str = '<div id="btn-loc" class="hidden" attrLoc="1">
text
</div>';
$doc = new DOMDocument();
$d=$doc->loadHtml($str);
$a = $doc->getElementById('btn-loc');
var_dump($a->getAttribute('attrloc'));
2
ответ дан Kuba 24 August 2018 в 04:41
поделиться

, чтобы сделать это с помощью php, используя простой анализатор html dom. имеет немного кривой обучения, но вид полезного

http://simplehtmldom.sourceforge.net/

1
ответ дан subdesign 24 August 2018 в 04:41
поделиться

Как насчет этого

$str = '<div id="btn-loc" class="hidden" attrLoc="1">';
$pattern = '/<div id="btn-loc".*\sattrLoc="([0-9])">/';
preg_match($pattern, $str, $matches);
var_dump($matches);

Выходы

array
  0 => string '<div id="btn-loc" class="hidden" attrLoc="1">' (length=45)  
  1 => string '1' (length=1)
0
ответ дан Uday Sawant 24 August 2018 в 04:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: