php实现格式化多行文本为Js可用格式
js里现在存写模板的场景好多,如:弹框类的html代码模板等,js不支持换行的长文本写法,必需要一行行的加起来,如:
varcontent='<div>row1</div>' +'<div>row2</div>';
而不可以写成:
varcontent='<div>row1</div> <div>row2</div>';
于是小加工一php小段代码,简化手工打的操作。
tojs.php
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<htmllang="en">
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=UTF-8">
<title>StrToJsString</title>
<styletype="text/css">
.content-box{border:1px#f0f0f0slid;border-left:4px#e0e0e0solid;padding:5px5px5px10px;}
</style>
</head>
<body>
<h1>输入格式化的文本:</h1>
<?php
$jsContent='';
if(isset($_POST['content'])&&$_POST['content']){
$content=strtr(htmlspecialchars($_POST['content']),array("\r\n"=>"\n"));
$rows=explode("\n",$content);
foreach($rowsas$row){
$jsContent.='+\''.$row."'<br/>";
}
$jsContent{0}='';
}
?>
<formaction="#"method="post">
<textareaname="content"style="width:99%;height:300px;"></textarea>
<p><inputtype="submit"value="提交"/></p>
</form>
<h2>格式化后的结果:</h2>
<divclass="content-box">
<?phpecho$jsContent;?>
</div>
</body>
</html>
以上所述就是本文的全部内容了,希望大家能够喜欢。