Как извлечь метатеги с нескольких веб-сайтов?
Я использую этот код для извлечения метатегов для одного веб-сайта, но я пытаюсь получить метатеги нескольких веб-сайтов с помощью файла.
<?php
$tags = get_meta_tags('https://demotiger.com');
$variable = $tags['description'];
echo $variable;
?>
Я попытался изменить этот код, чтобы он работал на нескольких веб-сайтах:
<?php
$file = file_get_contents('website-list.txt');
$tags = get_meta_tags('$file');
$variable = $tags['description'];
echo $variable;
?>
Мой wesbite-list.txt
https://example.com
https://example2.com
Я получаю ошибку:
Предупреждение: get_meta_tags ($file): не удалось открыть поток: нет такого файла или каталога в C:\someserver\www\index.php в строке 3
1 ответ
Решение
1. С вашего
wesbite-list.txt
содержит несколько строк, поэтому вам нужно извлечь содержимое этого файла в виде массива. Для этого используйте file ()
2. После этого перебираем массив и получаем теги.
<?php
$files = file('website-list.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach($files as $file){
$tags = get_meta_tags($file);
echo $tags['description'];
echo PHP_EOL;
}