2016-05-23 4 views
0

Мне интересно, могу ли я использовать файл для получения содержимого, чтобы получить только определенные элементы на желаемой странице. Например: сохраняйте содержимое только в тегах <title></title> или в тегах <meta></meta> и так далее. Если это невозможно с файлом_get_contents, что я могу использовать для достижения этого?PHP-файл получить содержимое

Спасибо!

ответ

1

Вы можете использовать функцию explode();

$content = file_get_contents("http://www.demo.com"); 
$explodedContent = explode("<title>", $content); 
$explodedExplodedContent = explode("</title>", $explodedContent[1]); 

echo $explodedExplodedContent[0]; // title of that page. 

Вы можете сделать его в функцию;

function contentBetween($beginStr, $endStr, $contentURL){ 
    $content = file_get_contents($contentURL); 
    $explodedContent = explode($beginStr, $content); 
    $explodedExplodedContent = explode($endStr, $explodedContent[1]); 

    return $explodedExplodedContent[0]; 
} 

echo contentBetween("<title>", "</title>", "http://www.demo.com"); // usage. 

Подробнее о explode() F: http://php.net/manual/tr/function.explode.php

+0

Clever мышление вне коробки, мне это нравится! –

+0

Я согласен! Это потрясающе, это тоже работает! У меня только один вопрос - когда я делаю следующее, это не возвращает счетчик строки, которую я пытаюсь сопоставить: 'echo substr_count ($ explodedExplodedContent [0], 'Solving');' Я возвращаюсь «21», а не «1» –

+0

Это странно, вы можете поделиться полным кодом или задать его как новый вопрос и связать его здесь? –

 Смежные вопросы

  • Нет связанных вопросов^_^