Простой HTMLDom - я запутался
Я хотел бы показать все файлы, которыми я делюсь, на своем экземпляре owncloud на моей "нормальной" домашней странице.
URL-адрес моего собственного облачного сервера: https://cloud.berndklaus.at/public.php?service=files&t=187e4767cb0421c7505cc3ceee450289
Оттуда я хотел бы показать имя файла, размер и дату последнего изменения на моем Hompage. На самом деле я могу отображать имя файла и последнее измененное имя, но не размер файла.
Я попробовал несколько мыслей, но ничего не помогло, ты можешь мне помочь? Извините за мой плохой английский!!:)
Код для отображения:
$html = file_get_html('https://cloud.berndklaus.at/public.php?service=files&t=187e4767cb0421c7505cc3ceee450289');
//find the table
$td = $html->find('td');
//find all links inside the table
foreach($td as $tds)
{
// Output the Links
//echo $tds;
echo $tds->find('a',0) . "-";
echo $tds->find('span[class=modified]', 0)->plaintext;
}
?>
1 ответ
Решение
Вот простой способ получить требуемую информацию... Идея состоит в том, чтобы извлечь все строки, а затем извлечь полезные данные внутри цикла:
$url = "https://cloud.berndklaus.at/public.php?service=files&t=187e4767cb0421c7505cc3ceee450289";
//Create a DOM object
$html = new simple_html_dom();
// Load HTML from a string
$html->load_file($url);
// Find all rows (files)
$files = $html->find('#fileList tr[data-id]');
// loop through all found files, extract and print the content
foreach($files as $file) {
$fileName = $file->find('span.nametext', 0)->plaintext;
$fileSize = $file->find('td.filesize', 0)->plaintext;
$modDate = $file->find('span.modified', 0)->title;
echo $fileName . " # " . $fileSize . " # " . $modDate . "<br>";
}
// Clear DOM object
$html->clear();
unset($html);
ВЫХОД
Christi und Bernd - XMAS.JPG # 363.1 kB # December 29, 2013 10:59