gpt4 book ai didi

php - 在 PHP 中剪切 UTF8 文本

转载 作者:可可西里 更新时间:2023-11-01 13:44:12 25 4
gpt4 key购买 nike

我从数据库中获取 UTF8 文本,我只想显示前 $len 个字符(以一个词结尾)。我已经尝试了几个选项,但由于特殊字符(á、é、í、ó 等),该功能仍然不起作用。

感谢您的帮助!

function text_limit($text, $len, $end='...')
{

mb_internal_encoding('UTF-8');
if( (mb_strlen($text, 'UTF-8') > $len) ) {

$text = mb_substr($text, 0, $len, 'UTF-8');
$text = mb_substr($text, 0, mb_strrpos($text," ", 'UTF-8'), 'UTF-8');

...
}
}

编辑以添加示例

如果我截断 65 个字符的文本,它返回:

Un jardín de estilo neoclásico acorde con el …

如果我更改特殊字符 (í, á),则返回:

Un jardin de estilo neoclasico acorde con el Palacio de …

我确定编码或服务器或 php 有一些奇怪的地方;但我想不通!谢谢!

最终解决方案

我正在使用这个 UTF8 PHP library现在一切正常...

最佳答案

使用 mb_substr。第一个参数是要检查的字符串,第二个是起始位置,第三个是长度,最后是编码。

mb_substr ("String", 0, $len, 'utf-8');

关于php - 在 PHP 中剪切 UTF8 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3294537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com