Как я могу получить все строки с определенным именем класса, например:
<tr class="dailyeventtext" bgcolor="#cfcfcf" valign="top">
а затем поместить каждую ячейку в эту строку в массив?
Я использовал cURL, чтобы вывести страницу с сервера клиента.
Заранее спасибо.
$matches = array(); $dom = new DOMDocument; $dom->loadHTML($html); foreach($dom->getElementsByTagName('tr') as $tr) { if ( ! $tr->hasAttribute('class')) { continue; } $class = explode(' ', $tr->getAttribute('class')); if (in_array('dailyeventtext', $class)) { $matches[] = $tr->getElementsByTagName('td'); } }
На вопрос «Как я могу анализировать HTML с PHP / regex / etc» уже есть несколько ответов. Перед тем, как задать вопрос, выполните поиск. Тем не менее, вот некоторые ресурсы:
И моя рекомендация заключалась бы в использовании DOMDocument и DOMXPath, как показано здесь:
SUBSTRING(page, INSTR(page, '<title>')+7,(INSTR( page, '</title>'))-(INSTR( page, '<title>')+7) )