php: получить простой текст из html - simplehtmldom или php strip_tags? - PullRequest
2 голосов
/ 05 декабря 2011

Я смотрю на получение простого текста из HTML.Какой из них выбрать, php strip_tags или simplehtmldom извлечение открытого текста?

Один из преимуществ для simplehtmldom - поддержка недействительного html, достаточно ли этого само по себе?

Ответы [ 5 ]

9 голосов
/ 05 декабря 2011

strip_tags достаточно для этого.

3 голосов
/ 05 декабря 2011

Вам, вероятно, следует использовать smiplehtmldom по той причине, которую вы упомянули, и что strip_tags также может оставить вас нетекстовыми элементами, такими как javascript или css, содержащимися в блоках script / style

Вы также сможете фильтровать текст по элементам, которые не отображаются (встроенный стиль = отображение: нет)

Тем не менее, если html достаточно прост, то strip_tags может быть быстрее и выполнит ту же задачу

1 голос
/ 27 марта 2017

Извлечь текст из HTML сложно, поэтому лучше всего использовать такую ​​библиотеку, как Html2Text. Он был построен специально для этой цели.

https://github.com/mtibben/html2text

Установка с использованием composer:

composer require html2text/html2text

Основное использование:

$html = new \Html2Text\Html2Text('Hello, &quot;<b>world</b>&quot;');

echo $html->getText();  // Hello, "WORLD"
0 голосов
/ 27 февраля 2017

Вы также можете удалить косую черту с полосками ()

0 голосов
/ 05 декабря 2011

Если вы просто хотите, чтобы страница отображалась простым текстом, тогда strip_tags быстрее и проще. Однако если вы хотите манипулировать текстом во время этого процесса, simplehtmldom в долгосрочной перспективе будет вам полезнее.

...