今天去面试,结果让一到题难住了,题是这样的 1234567输出为一百二十三万四千五百六十七元,当时用for循环加数据过滤想了好久,最后写完发觉逻辑有问题,回家路上想了一路,最终在家里完成了下列代码:
<?php
首先把1234567变成一二三四五六七的方法就不说了直接上连接的代码
function str_ch($str){
$arr1=str_split($str);
//return count($arr1);
$arr2=array('元','拾','百','千','万','拾','百','千','亿','拾','百','千');
$arr3=array();
for($i=0;$i<count($arr1);$i++){
$arr3[$i]=$arr2[$i];
}
$content=' ';
for($j=0;$j<count($arr1);$j++){
$content.=$arr1[$j];
$content.=$arr3[count($arr3)-$j-1];
}
return $content;
}
echo str_ch(123456789);