php大寫數字
發布時間: 2023-03-02 18:12:58
Ⅰ php將字元串中的阿拉伯數字轉換為中文數字
functionnumeral($num){
$china=array('零','一','二','三','四','五','六','七','八','九');
$arr=str_split($num);
for($i=0;$i<count($arr);$i++){
if(is_numeric($arr[$i])
$nums.=$china[$arr[$i]];
else
$nums.=$arr[$i];
}
return$nums;
}
Ⅱ 求一個 php 數字小寫轉為大寫的函數(在線等,謝謝)
PHP把阿拉伯數字轉換成中文,需要定義一個轉換的演算法:
演算法實例:
<?php
/將數字轉換為漢字,比如1210轉換為一千二百一十
$num="842105580";//九位數
functiondel0($num)//去掉數欄位前面的0
{
return"".intval($num);
}
functionn2c($x)//單個數字變漢字
{
$arr_n=array("零","一","二","三","四","五","六","七","八","九","十");
return$arr_n[$x];
}
functionnum_r($abcd)//讀取數值(4位)
{
$arr=array();
$str="";//讀取後的漢字數值
$flag=0;//該位是否為零
$flag_end=1;//是否以「零」結尾
$size_r=strlen($abcd);
for($i=0;$i<$size_r;$i++)
{
$arr[$i]=$abcd{$i};
}
$arrlen=count($arr);
for($j=0;$j<$arrlen;$j++)
{
$ch=n2c($arr[$arrlen-1-$j]);//從後向前轉漢字
echo$ch;
echo"";
if($ch=="零"&&$flag==0){//如果是第一個零
$flag=1;//該位為零
$str=$ch.$str;//加入漢字數值字元串
continue;
}elseif($ch=="零"){//如果不是第一個零了
continue;
}
$flag=0;//該位不是零
switch($j){
case0:$str=$ch;$flag_end=0;break;//第一位(末尾),沒有以「零」結尾
case1:$str=$ch."十".$str;break;//第二位
case2:$str=$ch."百".$str;break;//第三位
case3:$str=$ch."千".$str;break;//第四位
}
}
if($flag_end==1)//如果以「零」結尾
{
mb_internal_encoding("UTF-8");
$str=mb_substr($str,0,mb_strlen($str)-1);//把「零」去掉
}
return$str;
}
functionnum2ch($num)//整體讀取轉換
{
$num_real=del0($num);//去掉前面的「0」
$numlen=strlen($num_real);
echo"numlen=".$numlen."";
if($numlen>=9)//如果滿九位,讀取「億」位
{
$y=substr($num_real,-9,1);
//echo$y;
$wsbq=substr($num_real,-8,4);
$gsbq=substr($num_real,-4);
$a=num_r(del0($gsbq));
$b=num_r(del0($wsbq))."萬";
$c=num_r(del0($y))."億";
}elseif($numlen<=8&&$numlen>=5)//如果大於等於「萬」
{
$wsbq=substr($num_real,0,$numlen-4);
$gsbq=substr($num_real,-4);
$a=num_r(del0($gsbq));
$b=num_r(del0($wsbq))."萬";
$c="";
}elseif($numlen<=4)//如果小於等於「千」
{
$gsbq=substr($num_real,-$numlen);
$a=num_r(del0($gsbq));
$b="";
$c="";
}
$ch_num=$c.$b.$a;
return$ch_num;
}
echo$num."";//數字
echonum2ch($num);//漢字
echo"";
echonum2ch("1240");
?>
Ⅲ PHP正則表達,漢字大小寫字母數字下劃線以及@符號
郵箱的正則表達式為:/^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*$/,其他的一樓已經回答得很完備了
Ⅳ php用正則表達式判斷中文數字
$a = "一二三四五六七八九十";
echo '匹配到'.preg_match_all('/一|二|三|四|五|六|七|八|九|十/', $a, $ma).'個數字';
Ⅳ PHP 數字大小寫轉換
先把他賦給一個數組,然後用array_flip之類的數組操作函數,取值,可以取索引也可以取數據
<?php
$a=array('1'=>'一','2'=>'二');
print_r($a);
$b=array_flip($a);
print_r($b);
foreach($a as $b1=>$key){
echo $key;echo '<br>';
}
?>
關鍵是自己把對應關系寫到一個數組,就可以隨便操作了
Ⅵ php生成數組,鍵值大寫和小寫有區別嗎
是有區別的。
一樓說法有誤~
PHP不區分方法名大小寫
但是區分變數大小寫!
----------------------
正因為區分變數大小寫,所以鍵值的大小寫是有區別的。
Ⅶ php如何判斷大小寫字母,數字,ASCII符號
header('Content-Type:text/html;charset=utf-8');
$subject='fgGGGsdfgs';
if(preg_match('@^d+$@',$subject)){
echo'數字';
}elseif(preg_match('@^w+$@',$subject)){
echo'英文';
}else{
echo'混合';
}
上面代碼是用正則來判斷的
熱點內容