abcdefghig 怎么转换成a,bcd,efg,hig这种形式呢

解决方案 »

  1.   

    你这个题目是什么意思呢?$str='abcdefghig';....$str='a,bcd,efg,hig';
      

  2.   

    我的意思是,怎么将$str='abcdefghig',转换成$str='a,bcd,efg,hig'这种形式,就是把逗号插进去
      

  3.   

    看来我表达能力确实有问题啊,我的意思是
    $str1='0123456789',怎样将逗号有规律的插入到这个数据里面
      

  4.   

    先根据规则对字符串进行拆分,保存到一个数组中$数组,然后再用implode(",",$数组)进行合并
      

  5.   

    有一个函数叫number_format,楼主可以查阅了学习一下
      

  6.   


    <?php $number = 1234567890; echo number_format($number);
    // 1,234,567,890

     echo number_format($number,5);
    // 1,234,567,890.00000 echo number_format($number,3, ',','^');
    // 1^234^567^890,000?>
      

  7.   

    number_format 只是针对于数字,但是这个是字符
      

  8.   

    谢谢十楼的方案,但是这个字符串是'0123456789',如果使用number_format,头部的0就被清空了
      

  9.   

    这个函数应该对你有用根据需要,可以增添更多的参数,比如分隔位数和分隔符号
    function FormatString($OrginalString){ $string = array();
    $strlen = strlen($OrginalString);
    for ($i = 0 ; $i < $strlen; $i++){
    $string[] = $OrginalString[$i];
    }

    krsort($string);
    $return = '';
    $num = 0;
    foreach($string as $a => $b){
    if($num % 3 == 0 and $return != '') $return = ','.$return;
    $return = $b.$return;
    $num++;
    }
    return $return;
    }
      

  10.   


    function add($str1){
    $array1 = array();
    $leng=strlen($str1);
    if(($leng-1)%3==0){
    $leng = (strlen($str1)-1)/3;
    }
    else{
    $leng = ((strlen($str1)-1)/3)+1;
    }
    for($i=0;$i<=$leng;$i++){
    if($i==0){
    $array1[$i] =$str1{0};
    }
    else{
    $array1[$i] = substr($str1,1+(($i-1)*3),3);
    }
    }
    $newstr = implode(",",$array1);
    return $newstr;
    }
    谢谢,谢谢各位,我自己写了个函数,现在暂时能实现这个功能,希望各位指教.