Este é um extrato da classe de legibilidade deste garfo de texto completo-rss. Pode ser definido como uma versão melhor da leitura original do PHP.
A LIB de leitura PHP padrão é realmente antiga e precisa ser melhorada. Encontrei um ótimo garfo de texto completo-rss do @dither que melhore a classe de legibilidade.
php-cs-fixer e adicionou um espaço para nomeMas o código ainda é realmente difícil de entender / ler ...
Por padrão, este LIB usará a extensão arrumada se estiver disponível. O Tidy é usado apenas para limpar o html fornecido e evitar problemas com a estrutura html ruim, etc. será sugerido pelo compositor.
Além disso, se você tiver problemas ao analisar um conteúdo sem instalado, instale -o e tente novamente.
use Readability Readability ;
$ url = ' http://www.medialens.org/index.php/alerts/alert-archive/alerts-2013/729-thatcher.html ' ;
// you can use whatever you want to retrieve the html content (Guzzle, Buzz, cURL ...)
$ html = file_get_contents ( $ url );
$ readability = new Readability ( $ html , $ url );
// or without Tidy
// $readability = new Readability($html, $url, 'libxml', false);
$ result = $ readability -> init ();
if ( $ result ) {
// display the title of the page
echo $ readability -> getTitle ()-> textContent ;
// display the *readability* content
echo $ readability -> getContent ()-> textContent ;
} else {
echo ' Looks like we couldn ' t find the content. :( ' ;
} Se você deseja depurar ou verificar o que está acontecendo, poderá injetar um logger (que deve seguir PsrLogLoggerInterface , Monolog, por exemplo):
use Readability Readability ;
use Monolog Logger ;
use Monolog Handler StreamHandler ;
$ url = ' http://www.medialens.org/index.php/alerts/alert-archive/alerts-2013/729-thatcher.html ' ;
$ html = file_get_contents ( $ url );
$ logger = new Logger ( ' readability ' );
$ logger -> pushHandler ( new StreamHandler ( ' path/to/your.log ' , Logger:: DEBUG ));
$ readability = new Readability ( $ html , $ url );
$ readability -> setLogger ( $ logger );