อยากทราบวิธีทำไห้ asterisk อ่านตัวเลขภาษาไทยครับ
ถ้าเป็นตัวเลข 32,199.34 อยากไห้อ่าน สามหมื่นสองพันหนึ่งร้อยเก้าสิบเก้าบาท สามสิบสี่สตางค์ ครับ
ลองดัดแปลงจาก sound ที่เป็น en ก็อ่าน ไม่ถูกต้อง
Moderator: jubjang
function say_credit ($credit) {
list($baht, $stang)=split('[.]', sprintf('%01.2f', $credit));
$agi-> stream_file('your-credit');
if ($baht==0 && $stang==0){
$agi->say_number(0);
$agi->stream_file('stang');
}else{
if ($baht >= 1){
$agi->say_number($baht);
$agi-> stream_file('baht');
}
if ($stang>0){
$agi->say_number($stang);
$agi-> stream_file('stang');
}
}
}
function say_number_thai($number)
{
$txtnum1 = array('0','1','2','3','4','5','6','7','8','9','10');
$txtnum2 = array('','sib','roi','pan','muan','san','larn');
$number = str_replace(",","",$number);
$number = str_replace(" ","",$number);
$number = explode(".",$number);
if(sizeof($number)>2){
exit;
}
$strlen = strlen($number[0]);
$convert = '';
for($i=0;$i<$strlen;$i++){
$n = substr($number[0], $i,1);
if($n!=0){
if($i==($strlen-1) AND $n==1){ $this-> stream_file('eid'); }
elseif($i==($strlen-2) AND $n==2){ $this-> stream_file('ei'); }
elseif($i==($strlen-2) AND $n==1){ }
else{
$this-> say_digits($txtnum1[$n],"#"); }
$this-> stream_file($txtnum2[$strlen-$i-1],"#");
}
}
$this-> stream_file('baht');
if($number[1]=='0' OR $number[1]=='00' OR $number[1]==''){
}else{
$strlen = strlen($number[1]);
for($i=0;$i<$strlen;$i++){
$n = substr($number[1], $i,1);
if($n!=0){
if($i==($strlen-1) AND $n==1){$this-> stream_file('eid');}
elseif($i==($strlen-2) AND $n==2){$this-> stream_file('ei');}
elseif($i==($strlen-2) AND $n==1){}
else{
$this-> say_digits($txtnum1[$n],"#"); }
$this-> stream_file($txtnum2[$strlen-$i-1],"#");
}
}
$this-> stream_file('stang');
}
}
ย้อนกลับไปยัง PHPAGI - Where PHP Connects To Asterisk
กำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และ บุคคลทั่วไป 3 ท่าน