/var/Widget/Base/Contents.php
/**
* 输出标题
*
* @param integer $length 标题截取长度
* @param string $trim 截取后缀
*/
public function title(int $length = 0, string $trim = '...')
{
$title = Contents::pluginHandle()->trigger($plugged)->title($this->title, $this);
if (!$plugged) {
echo $length > 0 ? Common::subStr($this->title, 0, $length, $trim) : $this->title;
} else {
echo $title;
}
}
/var/Typecho/Common.php
/**
* 宽字符串截字函数
*
* @param string $str 需要截取的字符串
* @param integer $start 开始截取的位置
* @param integer $length 需要截取的长度
* @param string $trim 截取后的截断标示符
*
* @return string
*/
public static function subStr(string $str, int $start, int $length, string $trim = "..."): string
{
if (!strlen($str)) {
return '';
}
$iLength = self::strLen($str) - $start;
$tLength = $length < $iLength ? ($length - self::strLen($trim)) : $length;
$str = mb_substr($str, $start, $tLength, 'UTF-8');
return $length < $iLength ? ($str . $trim) : $str;
}
/**
* 获取宽字符串长度函数
*
* @param string $str 需要获取长度的字符串
* @return integer
*/
public static function strLen(string $str): int
{
return mb_strlen($str, 'UTF-8');
}
结论
<?php $this->title('1',''); ?>
这篇文章写得深入浅出,让我这个小白也看懂了!
高级,收藏
更新了好好好好好好好
快把你的音游端上来让大伙品鉴一番罢(恼)