Я ищу способ сделать небольшой предварительный просмотр другой страницы с URL-адреса, заданного пользователем на PHP .
Я бы хотел получить только название страницы, изображение (например, логотип сайта) и немного текста или описания, если оно доступно. Есть ли простой способ сделать это без каких-либо внешних библиотек / классов? благодаря
До сих пор я пытался использовать класс DOCDocument, загружать HTML и отображать его на экране, но я не думаю, что это правильный способ сделать это
Я рекомендую вам рассмотреть simple_html_dom для этого. Это будет очень легко.
Вот рабочий пример того, как вытащить заголовок и первое изображение.
<?php require 'simple_html_dom.php'; $html = file_get_html('http://www.google.com/'); $title = $html->find('title', 0); $image = $html->find('img', 0); echo $title->plaintext."<br>\n"; echo $image->src; ?>
Вот второй пример, который будет делать то же самое без внешней библиотеки. Я должен отметить, что использование регулярного выражения на HTML НЕ является хорошей идеей.
<?php $data = file_get_contents('http://www.google.com/'); preg_match('/<title>([^<]+)<\/title>/i', $data, $matches); $title = $matches[1]; preg_match('/<img[^>]*src=[\'"]([^\'"]+)[\'"][^>]*>/i', $data, $matches); $img = $matches[1]; echo $title."<br>\n"; echo $img; ?>
Для этого вы можете использовать SimpleHtmlDom . а затем найдите теги title и img или что еще вам нужно делать.