php truncate函数能截取不同字体的字吗
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php truncate函数能截取不同字体的字吗相关的知识,希望对你有一定的参考价值。
truncate 不是php本身的函数 ,是smarty定义的字符串截取函数,只能告诉你,不行.自己写个函数吧;给你一个做参考function str_natcut($string, $length, $dot = '...')
if (!$string || !$length) return $string;
$string = htmlspecialchars_decode($string);
$string = preg_replace('/\s2,/', ' ', $string);
$maxlen = min($length, mb_strlen($string, 'UTF-8'));
$chars = preg_split('/([\xF0-\xF7][\x80-\xBF]3|[\xE0-\xEF][\x80-\xBF]2|[\xC0-\xDF][\x80-\xBF]|[\x00-\x7F])/m', $string, $maxlen + 1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
$index = 0;
$length = .0;
$total = count($chars);
$result = array();
while ($length < $maxlen && $index < $total)
$char = $chars[$index];
if (preg_match('/[\xE0-\xEF][\x80-\xBF]2/', $char))
if (($maxlen - $length) < 1) break;
$length += 1;
else
$length += 0.5;
$result[] = $char;
$index++;
$result = implode('', $result);
unset($chars, $char);
return htmlspecialchars($result) . ($result == $string ? '' : $dot);
* 以自然的方式计算字符串长度
*
* 一个汉字计算一个长度,两个英文计算一个长度 参考技术A truncate()?
我没用过。你是自定义的?还是
基于armlinux的shell之文件路径截取
最近写脚本,需要对脚本中函数传递的路径参数进行截取,发现了以下比较好用的方法,记录下:
file=/dir1/dir2/dir3/my.file.txt
我们可以用$ 分别替换获得不同的值:
$file#*/:拿掉第一条/及其左边的字串:dir1/dir2/dir3/my.file.txt
$file##*/:拿掉最后一条/及其左边的字串:my.file.txt
$file#*.:拿掉第一个.及其左边的字串:file.txt
$file##*.:拿掉最后一个.及其左边的字串:txt
$file%/*:拿掉最后条/及其右边的字串:/dir1/dir2/dir3
$file%%/*:拿掉第一条/及其右边的字串:(空值)
$file%.*:拿掉最后一个.及其右边的字串:/dir1/dir2/dir3/my.file
$file%%.*:拿掉第一个.及其右边的字串:/dir1/dir2/dir3/my
以上是关于php truncate函数能截取不同字体的字吗的主要内容,如果未能解决你的问题,请参考以下文章