1

当我解析站点并打印出纯文本时,我会在打印输出中得到很多无法通过 str_replace 删除的换行符。

例如,如果我解析 eBay 并查找结束时间,

$ebayEndTime = $this->html_simple_dom->find( 'span[class=vi-tm-left]', 0 )->plaintext;

在打印输出中,它看起来像这样:

\t\t\t\t\t(2013 年 3 月 19 日\n\t\t\t\t\t15:10:11 PDT)\n\t\t\t

尝试删除它没有效果:

$search = array('\n', '\t', '\r');
error_log("end time:" .  str_replace( $search, " ", $ebayEndTime));

仍然导致:

\t\t\t\t\t(2013 年 3 月 19 日\n\t\t\t\t\t15:10:11 PDT)\n\t\t\t

我需要做什么来删除换行符/标签?我什至尝试过彻底:

$search = array('\n', '\t', '\r', '\\n', '\\t', '\\r', '\\\\n', '\\\t', '\\\r', '\\\\n', '\\\\t', '\\\\r');

据我所知,Java 要求转义字符被转义,但是当它打印在日志文件中时,它是否将其打印为使用 '\' 的 html 代码?

4

1 回答 1

0

怎么样:

$str = "\t\t\t\t\t(Mar 19, 2013\n\t\t\t\t\t15:10:11 PDT)\n\t\t\t";
echo trim(preg_replace('/\s+/', ' ', $str));
#=>(Mar 19, 2013 15:10:11 PDT)
于 2013-03-21T08:25:47.277 回答