我有2个textareas。在第一个textarea中,用户添加了我需要修改的文本。在第二个textarea中显示修改后的文本。
我需要修改的文字格式如下:
23.10.15
Text1
Text2
我想把文字放在同一行。在第2行和第3行之间我想要" - "出现,像这样:
23.10.15 Text1 - Text2
我的代码如下所示:
if(isset($_POST["submit"])) {
$text = $_POST["text-modify"];
$text = str_replace('', '', $text);
}
?>
<form id="form1" name="form1" method="post" action="">
<input type="submit" name="submit" id="submit" value="Submit" />
<textarea name="text-modify" id="text-modify" cols="75" rows="7000">
</textarea>
<textarea name="text-final" id="text-final" cols="75" rows="7000">
<?php echo $text; ?>
</textarea>
</form>
提前谢谢。
答案 0 :(得分:2)
在换行符上分解文本,弹出最后一项,用空格内爆,追加短划线和最后一块:
$pieces = explode("\n", $text);
$last = array_pop($pieces);
$text = implode(" ", $pieces) . " - " . $last;
更好的可能是:
$text = call_user_func_array('sprintf', array_merge(["%s %s - %s"], explode("\n", $text));
答案 1 :(得分:0)
你可以将你的php放在html中,使其更简单:
<textarea name="text-modify" id="text-modify" cols="75" rows="7000"><?php $yourVar ?></textarea>
或嵌入字符串
<textarea name="text-modify" id="text-modify" cols="75" rows="7000"><?php echo "Hi I am ". $nameVar ." How are you ? "</textarea>