小李SEO博客

网站优化服务

织梦cms字符串截取函数使用教程

dedecms 的cn_substr_utf8字符串截取函数商榷。在phpsir看到的这篇文章,主要是说下dedecms 的cn_substr_utf8函数好像有些问题,研究dedecms的朋友可以看下

在dedecms里面 cn_substr_utf8 函数是这样的。代码如下:/*** utf-8中文截取,单字节截取模式** @access public* @param string $str 需要截取的字符串* @param int $slen 截取的长度* @param int $startdd 开始标记处* @return string*/if ( ! function_exists('cn_substr_utf8')) {function cn_substr_utf8($str, $length, $start=0) {if(strlen($str) < $start+1) {return '';}preg_match_all("/./su", $str, $ar);$str = '';$tstr = '';</p> <p> //为了兼容mysql4.1以下版本,与数据库varchar一致,这里使用按字节截取for ($i=0; isset($ar[0][$i]); $i++) {if(strlen($tstr) < $start) {$tstr .= $ar[0][$i];} else {if(strlen($str) < $length + strlen($ar[0][$i]) ) {$str .= $ar[0][$i];} else {break;}}}return $str;}}

其中代码如下:if(strlen($str) < $length + strlen($ar[0][$i]) )一行可能会造成截取后多了一个字符,可以考虑改为代码如下:if(strlen($str) < $length + strlen($ar[0][$i]) -1 )测试代码如下代码如下:$f = "你好fasdfa你fasdf#e#";$pos = strpos($f,'#e#');var_dump($pos);var_dump(cn_substr_utf8($f,$pos));var_dump(cn_substr_utf82($f,$pos));</p> <p>function cn_substr($str, $slen, $startdd=0) {global $cfg_soft_lang;if($cfg_soft_lang=='utf-8') {return cn_substr_utf8($str, $slen, $startdd);}$restr = '';$c = '';$str_len = strlen($str);if($str_len < $startdd+1) {return '';}if($str_len < $startdd + $slen || $slen==0) {$slen = $str_len - $startdd;}$enddd = $startdd + $slen - 1;for ($i=0;$i<$str_len;$i++) {if($startdd==0) {

上一篇:织梦cms仿站教程中不兼容浏览器解决方法 下一篇:dedecms支付模块漏洞SQL注入修复方法
织梦cms相关文章阅读
  • 织梦cms首页自动更新的方法

    小李网络公司介绍织梦cms首页自动更新知识.包括DEDECMS实现首页每天自动更新的方法_织梦58,DEDECMS等PHP系统自动更新首页的办法_织梦58,织梦DeDecms自动更新首页的方法-编程脚本学习网....

  • 织梦cms用runphp=’yes’运行php方法

    小李网络公司介绍织梦cms用runphp=’yes’运行php方法知识,包括织梦cms建站教程织梦dedecms教程dedecms织梦系统织梦默认模板管理dedecms首页dede织梦仿站织梦cms移动织梦帮助文档织梦cms网站....

  • 织梦cms网站20位MD5加密密文解密示例介绍

    小李网络公司介绍织梦cms网站20位MD5加密密文解密示例介绍知识,包括什么叫密文加密文件怎么解密凯撒密码加密解密算法js加密密文加密方法RC4加密密文怎么弄的加密转换密文解析中文密文加密...

  • 织梦cms标签arclist中的自增变量autoindex说明

    小李网络公司介绍织梦cms标签arclist中的自增变量autoindex说明知识,包括python变量自增dedecms修改变量名dedecms删除变量dedecms变量数据库dedecms模版变量dedecms时间变量dedecms修改变量dedecms自定义变量...

  • 织梦cms目录结构全面解析

    小李网络公司介绍织梦cms目录结构全面解析知识,包括文件目录结构是什么织梦帮助文档织梦安装目录织梦系统建站织梦data目录迁移dedecms代码目录下载的织梦模板文件放在哪个目录dedecms移动目...

  • 织梦cms会员上传图片需要输入后台目录

    小李网络公司介绍织梦cms会员上传图片需要输入后台目录知识,包括上传图片显示缺少源文件地址织梦dedecms教程dede织梦仿站dedecms织梦系统如何在宝塔修改织梦前台图片dedecms远程pngdede图片上传失...

  • 织梦cms5.6/5.7系统转移data目录网站验证码不显示

    小李网络公司介绍织梦cms5.6/5.7系统转移data目录网站验证码不显示知识,包括linux data目录data目录在哪如何查看data内的文件mysql初始化data目录data里的文件可以删除吗如何打开data文件mysql创建data文...

  • 织梦cms网站程序安全配置教程

    小李网络公司介绍织梦cms安全配置知识.包括删除不必要的目录,删除不必要的文件,修改默认后台文件夹名称,后台新建新的管理员账户,删除默认的admin用户,迁移data目录到web目录外....

  • 织梦cms后台左侧菜单空白或不显示解决办法

    小李网络公司介绍织梦cms后台左侧菜单空白或不显示解决办法知识,包括织梦安装页面空白dede文档页空白dedecms不显示dede安装文件织梦登录界面空白织梦更新主页空白dedecms网站空白dede模块不显示...

  • 织梦cms不允许管理员账户前台登陆方法

    小李网络公司介绍织梦cms不允许管理员账户前台登陆方法知识,包括dedecms不允许管理员账户前台登陆方法_菜鸟教程,dede 管理员无法从前面登陆 dede 的管理员无法从前台登陆,需要从后台登陆,我要...

  • 织梦cms去版权信息SQL命令删除

    小李网络公司介绍织梦cms去版权信息SQL命令删除知识,包括查版权版权怎么申请PS如何删除图片版权信息qq音乐版权限制侵权删除彻底删除discuz版权织梦哪个版本可以删除版权网站版权信息规定要...

  • 织梦cms程序arclist标签idlist按指定id顺序输出方法

    小李网络公司介绍织梦cms程序arclist标签idlist按指定id顺序输出方法知识,包括织梦标签教程织梦仿站替换标签织梦标签嵌套织梦岛颜色之梦到第二关之梦到第八关之梦岛技巧之梦岛收集要素织梦...

SEO公司排名
 
QQ在线咨询
SEM竞价推广
137-1296-7640
SEO优化外包
137-1296-7640