You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CakePHP使用Text::slug转换孟加拉语文本为slug无法得到预期结果如何解决

你遇到的问题是CakePHP的Text::slug()默认正则规则仅保留ASCII字符,禁用转写(transliteratorId=false)后,孟加拉语的元音变音符号会被当作无效字符过滤,导致输出残缺。

解决方案

修改Text::slug()的调用参数,新增自定义正则规则,将孟加拉语字符加入保留范围,示例代码如下:

protected function _setName($name)
{
    return Text::slug($name, [
        'transliteratorId' => false,
        // 正则保留孟加拉语字符、数字、空白字符,u修饰符开启Unicode匹配
        'regex' => '/[^\p{Bengali}\p{N}\s]/u'
    ]);
}

上述配置会先删除所有非孟加拉语、非数字、非空白的字符,再自动将空白替换为连接符-,最终输出你预期的আমি-তোমায়-ভালোবাসি结果。

内容的提问来源于stack exchange,提问作者Niloy Rony

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 14:27:01