【发布时间】:2015-07-16 20:47:25
【问题描述】:
我正在尝试编写我的第一个自定义函数。我知道还有其他功能可以做同样的事情,但这个是我的。我写了函数,但我不理解 char_list 因为它与函数有关,并且无法找出 php.ini 中 str_word_count function 的第三个参数。我想我需要以某种格式来维护句点、逗号、分号、冒号等。请注意,在整个函数中都维护了双引号和单引号。从字符串中剥离的是底部符号。
$text = "Lorem ipsum' dolor sit amet, consectetur; adipiscing elit. Mauris in diam vitae ex imperdiet fermentum vitae ac orci. In malesuada."
function textTrim($text, $count){
$originalTxtArry = str_word_count($text, 1);
$shortenTxtArray = str_word_count(substr(text, 0,$count), 1);
foreach ($shortenTxtArray as $i=>$val) {
if ($originalTxtArry[$i] != $val) {
unset($shortenTxtArray[$i]);
}
}
$shortenTxt = implode(" ", $shortenTxtArray)."...";
return $shortenTxt;
}
输出 Lorem ipsum' dolor sit amet consectetur adipiscing elit Mauris in diam...
注意amet 后面的“,”不见了。
忽略末尾的句号字符串,我在返回之前将它们连接到末尾
感谢您的所有帮助。
戴夫
【问题讨论】:
-
抱歉,你的函数应该做什么?你向它发送什么输入,预期输出是什么,你实际得到什么?
-
你有什么问题@Dave?
-
第三个参数是单词中可以包含的任何其他有效字符。看看他们提供的例子,看起来很简单。他们在单词 fri3nd 中有一个“3”,在第三个参数中没有“3”,这个词被认为是“fri”。
-
这个函数的目的是什么,你是想限制字数吗?
-
如果你不想担心丢失标点符号,那么你可以简单地在一个空格上爆炸然后加入。
标签: php arrays string word-count