我有一些文本偶尔会包含很长的字符串,这会破坏我的CSS。
这是一个例子:
http://iapps.smartphonesoft.com/php/software_details.php?id=358281487
而这一个很好
http://iapps.smartphonesoft.com/php/software_details.php?id=380894729
是否可以将上面例子中的很长一行的* s剥离到可管理的长度?
额外的复杂性并不总是* s导致问题,即在这个例子中它是导致问题的=字符串。
http://iapps.smartphonesoft.com/php/software_details.php?id=371255483
所以我想写一个执行函数的PHP,如果$ description中的单个'word'是> = 30个字符长,将它缩小到30个字符。
所有文本都保存在变量$ description
中的问候,
格雷格
答案 0 :(得分:4)
默认情况下,浏览器不会包含一个非常长的单词。你可以覆盖这种行为,并且总是用CSS包装(即使你需要破解一个单词)(不需要PHP!)
该属性为word-wrap: break-word;
,适用于所有浏览器。
答案 1 :(得分:1)
你可以将字符串分解为单词数组, 然后检查每个单词的strlen> 30
像
$words = explode(" ", $string);
foreach($words as $k=>$word){
if(strlen($word) >= 30)
$words[$k] = substr($word,0,30) ;
}
之后将数组返回一个字符串 与
join(' ' ,$words);