试图简单地替换一些新的线条.尝试了3种不同的方式,我没有改变:
$description = preg_replace('/\r?\n|\r/','<br/>', $description);
$description = str_replace(array("\r\n","\r","\n"),"<br/>", $description);
$description = nl2br($description);
Run Code Online (Sandbox Code Playgroud)
这些应该都可以工作,但我仍然得到换行符.它们是双重的:"\ r \n".这不应该使这些失败对吗?
出于好奇,我试图弄清楚哪种正确的方法来逃避反斜杠用于PHP正则表达式模式,如下所示:
测试01:(3个反斜杠)
$pattern = "/^[\\\]{1,}$/";
$string = '\\';
// ----- RETURNS A MATCH -----
Run Code Online (Sandbox Code Playgroud)
测试02:(4个反斜杠)
$pattern = "/^[\\\\]{1,}$/";
$string = '\\';
// ----- ALSO RETURNS A MATCH -----
Run Code Online (Sandbox Code Playgroud)
根据下面的文章,4应该是正确的方式,但令我困惑的是两个测试都返回了一个匹配.如果两者都是对的,那么4是首选方式吗?
资源: