我有一个包含字符串的变量。例如:
$message =
'Dear User1,
Your record submitted has been disapproved by User.
Remarks:
Document No.:
Record Title: Test1
Record URL: http://myapp.dev/records?id=1
Sincerely,
Admin
Dear User1,
Your record submitted has been disapproved by User.
Remarks:
Document No.:
Record Title: Test2
Record URL: http://myapp.dev/records?id=2
Sincerely,
Admin';
我该怎么做才能得到这样的结果?
Dear User1,
Your record submitted has been disapproved by User.
Remarks:
Document No.:
Record Title: Test1
Record URL: http://myapp.dev/records?id=1
Record Title: Test2
Record URL: http://myapp.dev/records?id=2
Sincerely,
Admin
我想我可以通过使用preg_split();
来操作字符串?
请提及我错过的或你想知道的事情。任何想法都将不胜感激!
使用nl2br()
来获得所需的输出。
echo nl2br($message);
输出
Dear User1,
Your record submitted has been disapproved by User.
Remarks:
Document No.:
Record Title: Test1
Record URL: http://myapp.dev/records?id=1
Sincerely,
Admin
Dear User1,
Your record submitted has been disapproved by User.
Remarks:
Document No.:
Record Title: Test2
Record URL: http://myapp.dev/records?id=2
Sincerely,
Admin
参见演示
迟到总比什么都没有好。尝试此功能
function manipulate($text){
$texts = preg_split("/(Remarks:|Sincerely,|Document No.:)/",$text,-1, PREG_SPLIT_DELIM_CAPTURE);
$str = $texts[0];
$str .= "Remarks: 'n'nDocument No.:";
for($x=0;$x<count($texts);$x++){
if($texts[$x]=='Document No.:'){
$str .= trim($texts[($x+1)],"'r'n");
}
}
$str.= "'n'nSincerely,'n'nAdmin";
return $str;
}
如果您将此作为html使用,请使用类似的nl2br()
nl2br(manipulate($message)); //where $message is your "Dear User1,...."
我认为您需要在html页面中显示。尝试过nl2br()吗?
我认为应该更好地使用heredoc语法,例如:
$message = <<< EOT_MSG
'Dear User1,
...
....
EOT_MSG;
我认为你可以使用这样的东西,作为heredoc的替代品。
在这里你可以找到图书馆。https://gist.github.com/fcamp/c4cb828cfb22bbe845cb