จัดการและแปลงค่าตัวเลข

Number คือ PHP class ที่เข้ามาทำให้การจัดการตัวเลขต่างๆทำได้ง่ายขึ้น เช่น แปลงตัวเลขเป็นตัวหนังสือ, แปลงตัวเลขเป็นคำอ่านจำนวนเงิน, แปลงค่าไฟล์จาก Bytes, หรือแปลงไปเป็น Bytes

ดาวน์โหลด หรือติดตั้งผ่าน Composer

อ้างอิง เอกสาร API


// ในกรณีที่คุณไม่ได้ติดตั้งผ่าน Composer คุณต้อง include/require ไฟล์
require __DIR__.'/Rundiz/Number/Number.php

$number = new \Rundiz\Number\Number();
// class Number พร้อมใช้งานแล้วผ่าน $number

แปลงตัวเลขเป็นเงินบาท


echo $number->convertBaht(20000.50, true, 'Thai');// จะได้ สองหมื่นบาทห้าสิบสตางค์

ค่าแรกให้กรอกเป็นตัวเลขโดยตรวจ format ให้ถูกต้องไม่ให้มี ,
ค่าที่สองกำหนดเป็น true ถ้าจะให้แสดงคำว่าถ้วนกรณีไม่มีจำนวนสตางค์
ค่าที่สาม กำหนดภาษา โดยชื่อภาษาให้ตรงกับชื่อไฟล์ NumberXXX.php ซึ่งก็คือ English, Thai

แปลงตัวเลขเป็นคำตัวอักษร


echo $number->convertNumber(1001, 'Thai');// จะได้ หนึ่งพันเอ็ด

ค่าแรกให้กรอกเป็นตัวเลขโดยตรวจ format ให้ถูกต้องไม่ให้มี ,
ค่าที่สอง กำหนดภาษา โดยชื่อภาษาให้ตรงกับชื่อไฟล์ NumberXXX.php ซึ่งก็คือ English, Thai

แปลงขนาดไฟล์จากไบต์


echo $number->fromBytes(1300, 'AUTO', 2);// จะได้ 1.30 KB

ค่าแรกเป็นตัวเลขขนาดไบต์
ค่าที่สองเป็นหน่วยที่จะแปลง กำหนดได้ เช่น KiB, KB, MiB, MB, ...ไปเรื่อยๆจนถึง YiB, YB หรือกำหนด AUTO เพื่อแปลงอัตโนมัติ
ค่าที่สามเป็นจำนวนทศนิยมที่จะแปลงออกมา

แปลงขนาดไฟล์เป็นไบต์


echo $number->toBytes('9.7MiB');// จะได้ 10171187.2

ค่าแรกเป็นขนาดไฟล์พร้อมหน่วยกำกับ โดยหน่วยจะเป็นได้ตั้งแต่ B, KiB, KB, ...ไปเรื่อยๆจนถึง YiB, YB

2 comments on “จัดการและแปลงค่าตัวเลข

  • นริศา บอกว่า:

    ได้ลองเอาไปใช้ผสมกับ mpdf พิมพ์เป็นไฟล์ออกมาค่ะ แต่เจอปัญหาอยู่ข้อหนึ่ง คือเวลาที่ พิมพ์ออกไปแล้วตัวหนังสือมันอยู่ขอบ ๆ จะไม่สามารถพิมพ์ให้ต่อไปได้ค่ะมันจะขึ้นบรรทัดใหม่อัตโนมัติ แก้ยังไงได้ไหมคะ

    แล้วเราจะสามารถเก็บตัวเลขเป็น string ได้ไหมคะ หรือว่าต้องเรียกฟังก์ชั่นทุกครั้งไปเลย

    ตอบกลับ
    • vee บอกว่า:

      mpdf ติดขอบคงต้องดูว่าทำอย่างไรให้มันไม่ wrap (no wrap) text. กรณีนี้ไม่น่าจะเกี่ยวกับ class นี้เพราะมันแค่แปลงเลขออกมาเป็นตัวอักษรธรรมดา และตัวอักษรนั้นก็เป็นการเข้ารหัส utf-8 ตามไฟล์ php.

      การเก็บเป็น string ทำได้ตามปกติครับ.

      ตอบกลับ

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *

คุณอาจใช้แท็กHTMLและแอททริบิวต์เหล่านี้: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>