这个该怎么实现 比如$huxing从数据库的值为1,2,7,我最后想输出的是一室,二室,七室

解决方案 »

  1.   

    把数字带入这涵式就可以了    function change($mum)
        {
    $num=array('0','1','2','3','4','5','6','7','8','9'); 
    $cht=array('零','一','二','三','四','五','六','七','八','九'); 
    $change=str_replace($num,$cht,$mum); 
            return $change;       
        }
      

  2.   


    function ch_num($num) {

    $obj = array("零","一","二","三","四","五","六","七","八","九");

    $size = array("","十","百","千","","万","亿","兆");

    $nums=array(); if($num) 
    {
    $num =(string)$num;

    if($num == '10')return '十室';

    $num = strrev($num);

    for($i=0;$i<strlen($num);$i++)
    {
    array_push($nums, substr($num,$i,1));
    }

    if(count($nums)==2&&$nums[1]==1)
    {
    return $size[1].$obj[$nums[0]]  . '室';
    }

    for($i=0;$i<count($nums);$i++) 
    {
    if(($i==0&&$num[0]=='0')||($nums[$i]=='0'&&$nums[$i-1]=='0'))
    {
    $out[$i]='';
    continue;
    }

    $out[$i] = $obj[$nums[$i]];

    $out[$i] .= $nums[$i] != "0"? $size[$i%4] : "";

    if($i%4 == 0)$out[$i] .= $size[4+floor($i/4)];
    }

    $retval = join("",array_reverse($out));
    }

    return $retval . '室';
    }