simple html dom parser如何保留换行符?

使用simple html dom parser处理html文档比较方便,大部分情况下默认会将html文档或字符串中的换行符给过滤掉,这不会造成什么大的影响。但是有些情况下需要保留原先的换行符,比如说需要保留<pre></pre>中的原先字符串的原样,所以不能将换行符过滤掉,而需要保留。

方法如下:

//The PHP Simple HTML Dom Parser's load function supports multiple useful parameters:

load($str, $lowercase=true, $stripRN=false, $defaultBRText=DEFAULT_BR_TEXT)

//When calling the load function, simply pass false as the third parameter.

$html = new simple_html_dom();
$html->load("<html><head></head><body>stuff</body></html>", true, false);

//If using file_get_html, it's the ninth parameter.

file_get_html($url, $use_include_path = false, $context=null, $offset = -1, $maxLen=-1, $lowercase = true, $forceTagsClosed=true, $target_charset = DEFAULT_TARGET_CHARSET, $stripRN=true, $defaultBRText=DEFAULT_BR_TEXT)

//Edit: For str_get_html, it's the fifth parameter (Thanks yitwail)

str_get_html($str, $lowercase=true, $forceTagsClosed=true, $target_charset = DEFAULT_TARGET_CHARSET, $stripRN=true, $defaultBRText=DEFAULT_BR_TEXT, $defaultSpanText=DEFAULT_SPAN_TEXT)

参考文章:

  • https://stackoverflow.com/questions/4812691/preserve-line-breaks-simple-html-dom-parser
  • http://simplehtmldom.sourceforge.net/manual.htm

发表评论