Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 107,223

HOME > PHP > PHP Forum > แปลงค่าเงินตัวเลขเป็นตัวอักษร ,ตัวหนังสือ -> แจกกันเล่นๆ อีกแล้วครับท่าน (ถ้า มีคนแจกมาก่อนหน้านี้แล้วก็ขออภัยที่ทำให้รกบอร์ดนะครับ)





 

แปลงค่าเงินตัวเลขเป็นตัวอักษร ,ตัวหนังสือ -> แจกกันเล่นๆ อีกแล้วครับท่าน (ถ้า มีคนแจกมาก่อนหน้านี้แล้วก็ขออภัยที่ทำให้รกบอร์ดนะครับ)

 



Topic : 032216



โพสกระทู้ ( 942 )
บทความ ( 0 )



สถานะออฟไลน์




ฟังก์ชั่นแปลงจำนวนเงินที่เป็นตัวเลขให้เป็นคำอ่านคร๊าบบบบบ


Code (PHP)
function ThaiBaht(Number)
{
	//ตัดสิ่งที่ไม่ต้องการทิ้งลงโถส้วม
	for (var i = 0; i < Number.length; i++)
	{
		Number = Number.replace (",", ""); //ไม่ต้องการเครื่องหมายคอมมาร์
		Number = Number.replace (" ", ""); //ไม่ต้องการช่องว่าง
		Number = Number.replace ("บาท", ""); //ไม่ต้องการตัวหนังสือ บาท
		Number = Number.replace ("฿", ""); //ไม่ต้องการสัญลักษณ์สกุลเงินบาท
	}
	//สร้างอะเรย์เก็บค่าที่ต้องการใช้เอาไว้
	var TxtNumArr = new Array ("ศูนย์", "หนึ่ง", "สอง", "สาม", "สี่", "ห้า", "หก", "เจ็ด", "แปด", "เก้า", "สิบ");
	var TxtDigitArr = new Array ("", "สิบ", "ร้อย", "พัน", "หมื่น", "แสน", "ล้าน");
	var BahtText = "";
	//ตรวจสอบดูซะหน่อยว่าใช่ตัวเลขที่ถูกต้องหรือเปล่า ด้วย isNaN == true ถ้าเป็นข้อความ == false ถ้าเป็นตัวเลข
	if (isNaN(Number))
	{
		return "ข้อมูลนำเข้าไม่ถูกต้อง";
	} else
	{
		//ตรวสอบอีกสักครั้งว่าตัวเลขมากเกินความต้องการหรือเปล่า
		if ((Number - 0) > 9999999.9999)
		{
			return "ข้อมูลนำเข้าเกินขอบเขตที่ตั้งไว้";
		} else
		{
			//พรากทศนิยม กับจำนวนเต็มออกจากกัน (บาปหรือเปล่าหนอเรา พรากคู่เขา)
			Number = Number.split (".");
			//ขั้นตอนต่อไปนี้เป็นการประมวลผลดูกันเอาเองครับ แบบว่าขี้เกียจจะจิ้มดีดแล้ว อิอิอิ
			if (Number[1].length > 0)
			{
				Number[1] = Number[1].substring(0, 2);
			}
			var NumberLen = Number[0].length - 0;
			for(var i = 0; i < NumberLen; i++)
			{
				var tmp = Number[0].substring(i, i + 1) - 0;
				if (tmp != 0)
				{
					if ((i == (NumberLen - 1)) && (tmp == 1))
					{
						BahtText += "เอ็ด";
					} else
					if ((i == (NumberLen - 2)) && (tmp == 2))
					{
						BahtText += "ยี่";
					} else
					if ((i == (NumberLen - 2)) && (tmp == 1))
					{
						BahtText += "";
					} else
					{
						BahtText += TxtNumArr[tmp];
					}
					BahtText += TxtDigitArr[NumberLen - i - 1];
				}
			}
			BahtText += "บาท";
			if ((Number[1] == "0") || (Number[1] == "00"))
			{
				BahtText += "ถ้วน";
			} else
			{
				DecimalLen = Number[1].length - 0;
				for (var i = 0; i < DecimalLen; i++)
				{
					var tmp = Number[1].substring(i, i + 1) - 0;
					if (tmp != 0)
					{
						if ((i == (DecimalLen - 1)) && (tmp == 1))
						{
							BahtText += "เอ็ด";
						} else
						if ((i == (DecimalLen - 2)) && (tmp == 2))
						{
							BahtText += "ยี่";
						} else
						if ((i == (DecimalLen - 2)) && (tmp == 1))
						{
							BahtText += "";
						} else
						{
							BahtText += TxtNumArr[tmp];
						}
						BahtText += TxtDigitArr[DecimalLen - i - 1];
					}
				}
				BahtText += "สตางค์";
			}
			return BahtText;
		}
	}
}




Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-09-25 21:31:41 By : NanoTHoro View : 17554 Reply : 18
 

 

No. 1



โพสกระทู้ ( 484 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


ขอบคุณมากครับ คุณ นาโน






Date : 2009-09-25 21:56:34 By : onizike
 


 

No. 2



โพสกระทู้ ( 4 )
บทความ ( 0 )



สถานะออฟไลน์




ขอบคุณมากมายนะค่ะ
Date : 2010-06-09 12:02:13 By : peacefulgirl
 

 

No. 3



โพสกระทู้ ( 1,751 )
บทความ ( 0 )



สถานะออฟไลน์


คนไทยใจดีครับ
Date : 2010-06-09 13:06:04 By : SOUL
 


 

No. 4



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณหลายๆ

อวยพร ขอให้ มีเมีย สวยๆ

( ถ้ามี เมีย สวยอยู่แล้ว ก็ ขอให้ มีกิ๊ก สวยกว่าเมีย ครับ )


Date : 2010-06-13 13:37:03 By : roj2007
 


 

No. 5



โพสกระทู้ ( 4 )
บทความ ( 0 )



สถานะออฟไลน์


แวะมาอีกรอบ
มี version แปลงเป็น อังกฤษ ไหมหนอออ
Date : 2010-06-15 14:45:21 By : peacefulgirl
 


 

No. 6



โพสกระทู้ ( 70 )
บทความ ( 0 )



สถานะออฟไลน์


work ครับ
Date : 2011-04-20 15:11:13 By : badkung04
 


 

No. 7



โพสกระทู้ ( 251 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

vb.net มีมั้ยครับ
Date : 2011-07-12 22:24:46 By : pisansri
 


 

No. 8

Guest


ผมลองดูแล้วมันขึ้นว่า syntax error, unexpected ')', expecting '&' or T_VARIABLE in /home/taladrongl/domains/taladronglua.com/public_html/inc/thaibaht.php on line 2 น่ะครับ ช่วยดูให้หน่อย
Date : 2011-08-16 02:42:25 By : nobuts
 


 

No. 9

Guest


อยากได้ version ภาษาอังกฤษอ่ะ
Date : 2011-10-03 14:47:58 By : ขาจร
 


 

No. 10



โพสกระทู้ ( 3,745 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Facebook

กระทู้ถูกขุด !!!!!

คุณก็เปลี่ยนจากคำไทยเป็นอังกฤษ ก็ไม่เห็นยากนิครับ
Date : 2011-10-03 14:54:08 By : Dragons_first
 


 

No. 11



โพสกระทู้ ( 693 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


แล้วมี เวอร์ชั่นภาษาอังกฤษ ที่เป็น Bath Only ไหมครับ
Date : 2012-01-08 22:00:16 By : ddsiam
 


 

No. 12

Guest


ขอบคุณมากกกกครับบบ
Date : 2012-08-01 00:22:23 By : Natcha
 


 

No. 13

Guest


1-หากต้องการให้อ่านเป็นหลักจำนวนสิบล้าน จะทำยังไงค่ะ??
Date : 2013-04-04 14:11:31 By : Milkiiz
 


 

No. 14

Guest


จากโค้ดที่ให้มา หากต้องการให้ .735 แล้วเครื่องอ่าน .74 จะทำยังไงค่ะ
Date : 2013-04-05 11:26:46 By : Milkiiz
 


 

No. 15

Guest


จากโค้ดที่ให้มา หากต้องการให้ .735 แล้วเครื่องอ่าน .74 จะทำยังไงค่ะ
Date : 2013-04-05 11:39:22 By : Milkiiz
 


 

No. 16

Guest


นี้มันโค้ด javascript ไม่ใช่เหรอครับ หรือผมเข้าใจผิด?
Date : 2013-11-17 13:49:36 By : EThaiZone
 


 

No. 17

Guest


PHP Class numtobahtthai [แปลงตัวเลขเป็นอักษรสกุลเงินภาษาไทย] :: http://songsaluang.blogspot.com/2013/07/class-numtobahtthai-echo-number.html

PHP Class numtobahteng [แปลงตัวเลขเป็นอักษรสกุลเงินภาษาอังกฤษ] :: http://songsaluang.blogspot.com/2013/07/php-class-numtobahteng.html
Date : 2013-11-24 21:01:04 By : songsaluang
 


 

No. 18



โพสกระทู้ ( 693 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>php bathtext by www.code-father.com</title>
<?
$input_number=756.50;
echo $input_number."<br>";

$digit=array('ศูนย์','หนึ่ง','สอง','สาม','สี่','ห้า','หก','เจ็ด','แปด','เก้า','สิบ','สิบเอ็ด');
$digit2=array('','สิบ','ร้อย','พัน','หมื่น','แสน','ล้าน');

$explode_number = explode(".",$input_number);
$num0=$explode_number[0]; // เลขจำนวนเต็ม
$num1=$explode_number[1]; // หลักทศนิยม


// เลขจำนวนเต็ม
$didit2_chk=strlen($num0)-1;
for($i=0;$i<=strlen($num0)-1;$i++){
 
  $cut_input_number=substr($num0,$i,1);
  
  if($cut_input_number==0){ // ถ้าเลข 0 ไม่ต้องใส่ค่าอะไร
   //$bathtext1.=''."".$digit2[$didit2_chk]; 
  }elseif($cut_input_number==2 && $didit2_chk==1){ // ถ้าเลข 2 อยู่หลักสิบ
   $bathtext1.='ยี่'."".$digit2[$didit2_chk]; 
  }elseif($cut_input_number==1 && $didit2_chk==1){ // ถ้าเลข 1 อยู่หลักสิบ
   //$bathtext1.= ''."".$digit2[$didit2_chk]; 
  }elseif($cut_input_number==1 && $didit2_chk==0){ // ถ้าเลข 1 อยู่หลักหน่วย
   if(substr($num0,$i-1,1)==0){
    $bathtext1.= 'หนึ่ง'."".$digit2[$didit2_chk];
   }else{
    $bathtext1.= 'เอ็ด'."".$digit2[$didit2_chk];
   } 
     
  }else{
   $bathtext1.= $digit[$cut_input_number]."".$digit2[$didit2_chk];
  }
  
  
  $didit2_chk=$didit2_chk-1;
}
$bathtext1.='บาท ';

// เลขทศนิยม
$didit2_chk=strlen($num1)-1;
for($i=0;$i<=strlen($num1)-1;$i++){
 
  $cut_input_number=substr($num1,$i,1);
  
  if($cut_input_number==0){ // ถ้าเลข 0 ไม่ต้องใส่ค่าอะไร
  
  }elseif($cut_input_number==2 && $didit2_chk==1){ // ถ้าเลข 2 อยู่หลักสิบ
   $bathtext1.='ยี่'."".$digit2[$didit2_chk]; 
  }elseif($cut_input_number==1 && $didit2_chk==1){ // ถ้าเลข 1 อยู่หลักสิบ
   $bathtext1.= ''."".$digit2[$didit2_chk];
  }elseif($cut_input_number==1 && $didit2_chk==0){ // ถ้าเลข 1 อยู่หลักหน่วย
   if(substr($num1,$i-1,1)==0){
    $bathtext1.= 'หนึ่ง'."".$digit2[$didit2_chk];
   }else{
    $bathtext1.= 'เอ็ด'."".$digit2[$didit2_chk];
   } 
  }else{
   $bathtext1.= $digit[$cut_input_number]."".$digit2[$didit2_chk];
  }
  
  
  $didit2_chk=$didit2_chk-1;
}
$bathtext1.='สตางค์';

echo $bathtext1;
?>


ค่าที่ได้เป็น เจ็ดร้อยห้าสิบหกบาท ห้าสตางค์
Date : 2015-03-31 14:21:41 By : ddsiam
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : แปลงค่าเงินตัวเลขเป็นตัวอักษร ,ตัวหนังสือ -> แจกกันเล่นๆ อีกแล้วครับท่าน (ถ้า มีคนแจกมาก่อนหน้านี้แล้วก็ขออภัยที่ทำให้รกบอร์ดนะครับ)
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2019 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
for Contact Us : [Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 , 08-9968-0655 อัตราราคา คลิกที่นี่