格式化移动-如何从php中的源字符串创建固定宽度的字符串


Formatting for Mobile - How to create a fixed width string from a source string in php

嗨,我正在为移动设备进行一些格式化,根据我的消息来源,它们每行37个字符的效果最好。

假设我将一个字符串输入到一个"正常"的表单中,比如每行80个字符,例如:

输入:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce eget risus porta, sodales ligula sed, ultricies sem. Praesent cursus, erat et consequat cursus, ante nisl placerat neque, ut maximus massa ipsum quis turpis. In mollis viverra nisl vitae pellentesque. Ut et tristique nisi. Duis nec lacinia enim. Vestibulum ultricies risus sed nibh imperdiet, nec venenatis libero suscipit. Morbi accumsan purus lectus, et commodo risus blandit at. Morbi luctus lacus dapibus, tempus est et, sollicitudin est. Phasellus sodales sodales eros. Proin dapibus pulvinar diam, ut pretium nisl pulvinar a. Donec nec lectus urna. Curabitur eu dolor pharetra, facilisis metus vitae, consectetur orci. Curabitur quis egestas mi, non tincidunt nisl. 

我希望例程将/n放在37个字符左右,这样它在移动设备的屏幕上就很容易阅读。

输出:

Lorem ipsum dolor sit amet,
consectetur adipiscing elit. Fusce
eget risus porta, sodales ligula sed,
ultricies sem. Praesent cursus, erat
et consequat cursus, ante nisl
placerat neque, ut maximus massa
ipsum quis turpis. In mollis viverra
nisl vitae pellentesque. Ut et
tristique nisi. Duis nec lacinia
enim. Vestibulum ultricies risus sed
nibh imperdiet, nec venenatis libero
suscipit. Morbi accumsan purus
lectus, et commodo risus blandit at.
Morbi luctus lacus dapibus, tempus
est et, sollicitudin est. Phasellus
sodales sodales eros. Proin dapibus
pulvinar diam, ut pretium nisl
pulvinar a. Donec nec lectus urna.
Curabitur eu dolor pharetra,
facilisis metus vitae, consectetur
orci. Curabitur quis egestas mi, non
tincidunt nisl. 

每行在37列处都有回车符,以保持单词的一致性。

这是我们正在编写的API的一部分,我们需要将/n写入输出字符串的变量中。

输入字符串是一个表单字段,即

$input=$_POST['input'];

输出

<textarea name="str" id="textarea" cols="80" rows="20">
   [print $output code goes here]
</textarea>

你们中的许多人都在问我为什么要这么做。原因如下:具体来说,我的指令是将一个文本输入字符串转换为18点宋体,其中有37个字符,每行末尾都有一个<br>。我可以毫无问题地完成这一部分,一旦我有了一个带有新行或回车的字符串,所以我只是把这篇文章分解成一个简单的字符串问题,而不是手机电子邮件哲学中的辩论!

嗨,当我在表单中输入带有标点符号(如撇号('))的文本,然后将输入反馈到<textarea>时,它会在输出中添加一个额外的''。我尝试了str_replace,但它似乎没有删除它。

输入:

Additional Strategies To This Case Study – Apply These To Propel Search Triggers’ Power To The Fullest!
Keep an 'arsenal' of keyword phrases, which you then 'sprinkle' into your titles, tags, and text from time to time. That's really the key. Finding those initial words you're pursuing is the most important factor. And then being consistent with your content on the site over spans of time, strategically incorporating the words you generated from Search Triggers (ST).

输出

Additional Strategies To This Case
Study – Apply These To Propel
Search Triggers’ Power To The
Fullest!
Keep an ''arsenal'' of keyword
phrases, which you then ''sprinkle''
into your titles, tags, and text from
time to time. That''s really the key.
Finding those initial words you''re
pursuing is the most important
factor. And then being consistent
with your content on the site over
spans of time, strategically
incorporating the words you generated
from Search Triggers (ST).

如何删除文本区域输出字符串中撇号之前的''?

$str = str_replace( '', "'", $str);   

无效,因为''被视为文字。谢谢

php函数wordwrap可以帮助您实现想要的

http://php.net/manual/en/function.wordwrap.php

函数wordwrap完成了这项工作。我不知道有这样的功能。非常感谢。

<?php
$text = "The quick brown fox jumped over the lazy dog.";
$newtext = wordwrap($text, 20, "<br />'n");
echo $newtext;
?>