السلام و عليكم و رحمة الله
لقد قمت بمشاهدة الموضوع و بعد إذن المبرمجين الذين قاموا بعمل الكود، هذا حل مقترح
==============================
كود PHP:
<?php
function num2text($num)
{
if($num < 10000)
$res = arabicNumber($num);
else
$res = numtoarb($num);
return($res);
}
function arabicNumber($num){
$aname=array('واحد','اثنان','ثلاثة','اربعة','خمسة','ستة','سبعة','ثمانية','تسعة','عشرة','أحد عشر','اثنا عشر');
$aname10=array('عشر','عشرون','ثلاثون','اربعون','خمسون','ستون','سبعون','ثمانون','تسعون');
$aname100=array('مئة','مئتان','ثلثمائة','اربعمائة','خمسمائة','ستمائة','سبعمائة','ثمانمائة','تسعمائة');
$aname1000=array('الف','الفان');
$num4=floor($num / 1000 );
$num3=floor(($num-100*num3-1000*$num4) / 100 );
$num2=floor(($num-100*$num3) / 10) ;
$num1=$num - 10*$num2;
//echo "<br />num $num num1 $num1 num2 $num2 ";
if($num4==0 and $num>999) return $aname1000[$num4-1];
if($num4>2 and $num4<11 ) return $aname[$num4-1]." آلاف و".arabicNumber($num-1000*$num4);
if($num4>2 and $num4>10) return arabicNumber($num4-1)." ألف و".arabicNumber($num-1000*$num4);
if($num4<3 and $num>1000) return $aname1000[$num4-1]." و ".arabicNumber($num-1000*$num4);
if($num3==0 and $num>99) return $aname100[$num3-1];
if($num3<>0 and $num>100) return $aname100[$num3-1]." و ".arabicNumber($num-100*$num3);
if($num>12 and $num<20) return $aname[$num1-1]." ".$aname10[$num2-1];
if($num>20 and $num % 10 <> 0 ) return $aname[$num1-1]." و ".$aname10[$num2-1];
if($num<13) return $aname[$num-1];
if($num>19 and $num % 10 == 0 ) return $aname10[$num2-1];
return $num;
}
function numtoarb ($total)
{
$total=explode(".",$total);
$j= strlen($total[0]);
$je=$j;
$je--;
$de=1;
for($i=1;$i<$j;$i++)
$de=$de*10;
$t=$total[0];
for($i=0;$i<$j;$i++)
{
$te[$je]=$t/$de;
$t=$t%$de;
$de=$de/10;
$temp=explode(".",$te[$je]);
$te[$je]=$temp[0];
$je--;
}
for($i=0;$i<$j;$i++)
{
if ($i == 0)
{
if ($j<3)
switch($te[$i])
{
case "0" : $arb[0]=" ";
break;
case "1" : $arb[0]= " واحد" ;
break;
case "2" : if($te[1]=="1") $arb[0]=" اثنا "; else $arb[0]=" اثنان" ;
break;
case "3" : $arb[0]=" ثلاثة";
break;
case "4" : $arb[0]=" اربعة" ;
break;
case "5" : $arb[0]=" خمسة" ;
break;
case "6" : $arb[0]=" ستة" ;
break;
case "7" : $arb[0]=" سبعة" ;
break;
case "8" : $arb[0]=" ثمانية" ;
break;
case "9" : $arb[0]=" تسعة" ;
break;
}
else
switch($te[$i])
{
case "0" : $arb[0]=" ";
break;
case "1" : $arb[0]=" وواحد" ;
break;
case "2" : if($te[1]=="1") $arb[0]=" واثنا "; else $arb[0]=" واثنان" ;
break;
case "3" : $arb[0]=" وثلاثة";
break;
case "4" : $arb[0]=" واربعة" ;
break;
case "5" : $arb[0]=" وخمسة" ;
break;
case "6" : $arb[0]=" وستة" ;
break;
case "7" : $arb[0]=" وسبعة" ;
break;
case "8" : $arb[0]=" وثمانية" ;
break;
case "9" : $arb[0]=" وتسعة" ;
break;
}
}
if ($i == 1)
{
if ($j==2 )
{
if($te[$i]==1){if($te[0]=="1") {$arb[0]=" " ;$arb[1]=" أحد عشر";} elseif($te[0]=="0")$arb[1]=" عشرة"; else $arb[1]=" عشر" ; }
if ( $te[0]=="0")
switch($te[$i])
{
case "0" : $arb[1]=" " ;
break;
case "1" : if($te[0]=="1") {$arb[0]=" " ;$arb[1]=" أحد عشر";} elseif($te[0]=="0")$arb[1]=" عشرة"; else $arb[1]="عشر" ;
break;
case "2" : $arb[1]=" عشرون" ;
break;
case "3" : $arb[1]=" ثلاثون" ;
break;
case "4" : $arb[1]=" اربعون" ;
break;
case "5" : $arb[1]=" خمسون" ;
break;
case "6" : $arb[1]=" ستون" ;
break;
case "7" : $arb[1]=" سبعون" ;
break;
case "8" : $arb[1]=" ثمانون" ;
break;
case "9" : $arb[1]=" تسعون" ;
break;
}
}
else
switch($te[$i])
{
case "0" : $arb[1]=" " ;
break;
case "1" : if($te[0]=="1") {$arb[0]=" " ;$arb[1]=" وأحد عشر";}elseif($te[0]=="0")$arb[1]=" وعشرة"; else $arb[1]=" عشر" ;
break;
case "2" : $arb[1]=" وعشرون" ;
break;
case "3" : $arb[1]=" وثلاثون" ;
break;
case "4" : $arb[1]=" واربعون" ;
break;
case "5" : $arb[1]=" وخمسون" ;
break;
case "6" : $arb[1]=" وستون" ;
break;
case "7" : $arb[1]=" وسبعون" ;
break;
case "8" : $arb[1]=" وثمانون" ;
break;
case "9" : $arb[1]=" وتسعون" ;
break;
}
}
if ($i == 2)
{
if ($j==3)
switch($te[$i])
{
case "0" : $arb[2]=" " ;
break;
case "1" : $arb[2]=" مائة" ;
break;
case "2" : $arb[2]=" مائتان" ;
break;
case "3" : $arb[2]=" ثلاثمائة" ;
break;
case "4" : $arb[2]=" اربعمائة" ;
break;
case "5" : $arb[2]=" خمسمائة" ;
break;
case "6" : $arb[2]=" ستمائة" ;
break;
case "7" : $arb[2]=" سبعمائة" ;
break;
case "8" : $arb[2]=" ثمانمائة" ;
break;
case "9" : $arb[2]=" تسعمائة" ;
break;
}
else
switch($te[$i])
{
case "0" : $arb[2]=" " ;
break;
case "1" : $arb[2]=" ومائة" ;
break;
case "2" : $arb[2]=" ومائتان" ;
break;
case "3" : $arb[2]=" وثلاثمائة" ;
break;
case "4" : $arb[2]=" واربعمائة" ;
break;
case "5" : $arb[2]=" وخمسمائة" ;
break;
case "6" : $arb[2]=" وستمائة" ;
break;
case "7" : $arb[2]=" وسبعمائة" ;
break;
case "8" : $arb[2]=" وثمانمائة" ;
break;
case "9" : $arb[2]=" وتسعمائة" ;
break;
}
}
if ($i == 3)
{
if($j==4)
switch($te[$i])
{
case "0" : $arb[$i]=" " ;
break;
case "1" : $arb[$i]=" ألف" ;
break;
case "2" : $arb[$i]=" ألفان" ;
break;
case "3" : $arb[$i]=" ثلاثة آلاف" ;
break;
case "4" : $arb[$i]=" اربعة آلاف" ;
break;
case "5" : $arb[$i]=" خمسة آلاف" ;
break;
case "6" : $arb[$i]=" ستة آلاف" ;
break;
case "7" : $arb[$i]=" سبعة آلاف" ;
break;
case "8" : $arb[$i]=" ثمانية آلاف " ;
break;
case "9" : $arb[$i]=" تسعة آلاف " ;
break;
}
elseif ($j==5)
switch($te[$i])
{
case "0" : $arb[$i]=" " ;
break;
case "1" : $arb[$i]=" واحد " ;
break;
case "2" : if($te[6]=="1") $arb[$i]=" اثنا "; else $arb[$i]=" اثنان" ;
break;
case "3" : $arb[$i]=" ثلاثة " ;
break;
case "4" : $arb[$i]=" اربعة " ;
break;
case "5" : $arb[$i]=" خمسة " ;
break;
case "6" : $arb[$i]=" ستة " ;
break;
case "7" : $arb[$i]=" سبعة " ;
break;
case "8" : $arb[$i]=" ثمانية " ;
break;
case "9" : $arb[$i]=" تسعة " ;
}
else
switch($te[$i])
{
case "0" : $arb[$i]=" " ;
break;
case "1" : $arb[$i]=" وواحد " ;
break;
case "2" : if($te[4]=="1") $arb[$i]=" واثنا "; else $arb[$i]=" واثنان" ;
break;
case "3" : $arb[$i]=" وثلاثة " ;
break;
case "4" : $arb[$i]=" واربعة " ;
break;
case "5" : $arb[$i]=" وخمسة " ;
break;
case "6" : $arb[$i]=" وستة " ;
break;
case "7" : $arb[$i]=" وسبعة " ;
break;
case "8" : $arb[$i]=" وثمانية " ;
break;
case "9" : $arb[$i]=" وتسعة " ;
}
}
if ($i == 4)
{
if($j==5 )
switch($te[$i])
{
case "0" : $arb[$i]=" " ;
break;
case "1" : if($te[3]=="1") {$arb[3]=" " ;$arb[4]=" أحد عشر الفا";} elseif($te[3]=="0")$arb[4]=" عشرة آلاف";else$arb[$i]=" عشر الفا" ;
break;
case "2" : $arb[$i]=" عشرون " ;
break;
case "3" : $arb[$i]=" ثلاثون " ;
break;
case "4" : $arb[$i]=" اربعون " ;
break;
case "5" : $arb[$i]=" خمسون " ;
break;
case "6" : $arb[$i]=" ستون " ;
break;
case "7" : $arb[$i]=" سبعون " ;
break;
case "8" : $arb[$i]=" ثمانون " ;
break;
case "9" : $arb[$i]=" تسعون " ;
break;
}
else
switch($te[$i])
{
case "0" : $arb[$i]=" " ;
break;
case "1" : if($te[3]=="1") {$arb[3]=" " ;$arb[4]=" وأحد عشر الفا";} elseif($te[3]=="0")$arb[4]=" وعشرة آلاف";else$arb[$i]=" عشر الفا" ;
break;
case "2" : $arb[$i]=" وعشرون " ;
break;
case "3" : $arb[$i]=" وثلاثون " ;
break;
case "4" : $arb[$i]=" واربعون " ;
break;
case "5" : $arb[$i]=" وخمسون " ;
break;
case "6" : $arb[$i]=" وستون " ;
break;
case "7" : $arb[$i]=" وسبعون " ;
break;
case "8" : $arb[$i]=" وثمانون " ;
break;
case "9" : $arb[$i]=" وتسعون " ;
break;
}
}
if ($i == 5)
{
if ($j==6)
switch($te[$i])
{
case "0" : $arb[$i]=" " ;
break;
case "1" : $arb[$i]=" مائة " ;
break;
case "2" : $arb[$i]=" مائتان " ;
break;
case "3" : $arb[$i]=" ثلاثمائة " ;
break;
case "4" : $arb[$i]=" اربعمائة " ;
break;
case "5" : $arb[$i]=" خمسمائة " ;
break;
case "6" : $arb[$i]=" ستمائة " ;
break;
case "7" : $arb[$i]=" سبعمائة " ;
break;
case "8" : $arb[$i]=" ثمانمائة " ;
break;
case "9" : $arb[$i]=" تسعمائة " ;
break;
}
else
switch($te[$i])
{
case "0" : $arb[$i]=" " ;
break;
case "1" : $arb[$i]=" ومائة " ;
break;
case "2" : $arb[$i]=" ومائتان " ;
break;
case "3" : $arb[$i]=" وثلاثمائة " ;
break;
case "4" : $arb[$i]=" واربعمائة " ;
break;
case "5" : $arb[$i]=" وخمسمائة " ;
break;
case "6" : $arb[$i]=" وستمائة " ;
break;
case "7" : $arb[$i]=" وسبعمائة " ;
break;
case "8" : $arb[$i]=" وثمانمائة " ;
break;
case "9" : $arb[$i]=" وتسعمائة " ;
break;
}
}
if ($i == 6)
switch($te[$i])
{
case "0" : $arb[$i]=" " ;
break;
case "1" : $arb[$i]=" مليون " ;
break;
case "2" : $arb[$i]=" مليونان " ;
break;
case "3" : $arb[$i]=" ثلاثة ملايين " ;
break;
case "4" : $arb[$i]=" اربعة ملايين " ;
break;
case "5" : $arb[$i]=" خمسة ملايين " ;
break;
case "6" : $arb[$i]=" تة ملايين " ;
break;
case "7" : $arb[$i]=" سبعة ملايين " ;
break;
case "8" : $arb[$i]=" ثمانية ملايين " ;
break;
case "9" : $arb[$i]=" تسعة ملايين " ;
break;
}
}
if($j>4 && $te[4]!="1")
$arb[4]=$arb[4]." الف ";
$strarb=$arb[6].$arb[5].$arb[3].$arb[4].$arb[2].$arb[0].$arb[1];
return $strarb;
}
?>