当我运行这段代码时:
$x = '国際交流基金 - 「松島図屏風」他 日米所蔵作品による夢の競演「宗達:創造の波」展開催';
var_dump(mb_substr($x, 0, 80));我希望字符串不会被截断,因为它小于80个字符。
但是,这是输出:
string(80) "国際交流基金 - 「松島図屏風」他 日米所蔵作品による夢�"知道mb_substr为什么要截断它(而不是正确地截断最后一个字符)吗?
发布于 2015-08-28 01:49:36
将函数使用的适当编码设置为:
mb_substr($x, 0, 80, "UTF-8")mb_internal_encoding()之前通过mb_substr()$x = '国際交流基金 - 「松島図屏風」他 日米所蔵作品による夢の競演「宗達:創造の波」展開催';
var_dump(mb_substr($x, 0, 80, "UTF-8"));输出:
string(123) "国際交流基金 - 「松島図屏風」他 日米所蔵作品による夢の競演「宗達:創造の波」展開催"https://stackoverflow.com/questions/32261958
复制相似问题