utf-8的中文字符串是三个字节
复制代码 代码如下:
<?php
//编码utf-8
echo strlen(‘测试文字a测试文字高中数学优秀教案’);
echo ‘-‘;
echo mb_strlen(‘测试文字a测试文字’,’utf-8′);
?>
输出:25-9
gb2312的中文字符串是二个字节
复制代女士精华液码 代码如下:
<?php
//编码gb2312
echo strlen(‘测试文字a测试文字’);
echo ‘-‘;
echo mb_strlen(‘测试文字a测试文字’,’gb2312′);
?>
输出:17-9
在mysql数据库(5.1以后的版本)中,如果字段类型为varchar(10)迃幵(YU JIAN)是什么意思则可插入10个字符(不是字节);
所以在判断字符串的长度时需要根据文档编码来区分。
符一个简单的utf-8下字符串截取(按字符个数截取)
复制怀孕吃什么水果代码 代码如下:
<?
/*
* utf-8字符串截取
* $str 要截取的字串
* $start 截取起始位置
* $length 截取长度
*/
function cutstr($str,$start,$length) {
$restr = ”;
$j = 0;
$end = $length + $start – 1;
$plen = strlen($str);
for($i=0;$i<$plen;$i++) {
$restr .= ord($str[$i])>127 ? $str[$i].$str[++$i].$str[++$i] : $str[$i];
$j++;
if ($j &脂类的生理功能lt; $start){$restr = ”;}
if ($j >= $end){break;}
}
$restr .=”;
return $restr;
}
$str = ‘中新网9月24日电 二十国集团(g20)领导人第三次金融峰会今日将在美国匹兹堡召开。’;
echo $str;
echo ‘<br>’;
echo utf8_substr($str,0,25);
echo ‘<br>’;
?>
本文发布于:2023-04-06 14:16:31,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/f2768eba87f68f9d8cdc3c80cd9d60dd.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:php 不同编码下的字符串长度区分.doc
本文 PDF 下载地址:php 不同编码下的字符串长度区分.pdf
留言与评论(共有 0 条评论) |