当前位置 : 主页 > 网络编程 > PHP >

str_pad_g.php

来源:互联网 收集:自由互联 发布时间:2021-06-28
str_pad_g.php /** * PHP 自动填充字符串到指定中文个数的宽度 * $str 需要填充的字符串 * $str_num 中文个数 * * 支持中文,英文,符号, * 主要用于输入出指定宽度的地方,例如打印购物小票
str_pad_g.php
/**
 * PHP 自动填充字符串到指定中文个数的宽度
 * $str 需要填充的字符串
 * $str_num 中文个数
 *
 * 支持中文,英文,符号, 
 * 主要用于输入出指定宽度的地方,例如打印购物小票
 */
function aa($str,$str_num){
    $len_step = 3; //如果是utf-8编码,则中文字符长度为3
    $sLen = strlen($str);
    $cn = 0;
    $en = 0;
    for( $i=0; $i < $sLen; $i++ ){
        //判断,如果是中文字符串,则当前总字节数加上相应编码的中文字符长度
        if( ord(substr($str,$i,1)) > 0xa0 )
        {
            $i += $len_step - 1;
            $cn ++;
        }else{ //否则,为英文字符,加1个字节
            $en ++;
        }
    }
    //
    for ($x=0;$x<$en;$x++){
        $str = $str.' ';
    }
    $str_len = ($str_num*3) - $en;
    $str = str_pad($str,$str_len,' ');
    return $str;
}
var_dump(aa('中中111个',9));
var_dump(aa('中中中中1个',9));
var_dump(aa('中中中a个',9));
var_dump(aa('中中中,个',9));
var_dump(aa('中中中,个',9));
上一篇:medoo.php
下一篇:PHP 防止表单重复提交
网友评论