เขียนโปรแกรม PHP สร้างตัวเลือกจำนวนเงินที่คาดว่าลูกค้าจ่าย ระบบขายหน้าร้าน

โดย CyberMAN
จากบทความที่แล้วได้กล่าวถึงแนวคิดการเขียนโปรแกรมแบบ ตัวเลือกจำนวนเงินที่ลูกค้าจ่าย ระบบขายหน้าร้าน ไปแล้ว บทความนี้เราก็จะมาลงมือเขียนโค้ด PHP ตามแนวคิดดูครับ ว่าจะผลลัพธ์ของโปรแกรมจะเป็นอย่างไร

PHP ตัวเลือกจำนวนเงิน ที่ลูกค้าชำระ


ในตัวอย่างโค้ด PHP ด้านล่างนี้ ได้ย้ายส่วนของการคำนวณไปไว้ในฟังก์ชั่น create_choice() เพื่อง่ายต่อการเขียนโปรแกรมเรียกใช้หลายๆครั้ง และการคืนค่าออกมาจะต้องมากกว่าจำนวนเงินที่ลูกค้าต้องชำระเสมอ หากยอดเงินที่คำนวณออกมาในหลักไหนต่ำกว่า ก็จะคืนค่าว่างแทน (คงไม่มีใครรับเงินที่ไม่ครบเข้าระบบหรอกนะ จริงไหมครับ ^^; )





[ PHP Code ]

<?php
session_start();
header('Content-Type: text/html; charset=utf-8');

$total = 155;
echo '<h3>รวม = '. $total .'</h3>';

$_SESSION['test'] = array();

function create_choice($total, $pos){  
    $arr_digit = array(1=>10, 2=> 20, 3=>50, 4=>100, 5=>200, 6=>500, 7=>1000);
    $choice_num = $arr_digit[$pos];
    $text_number = (string)$total;
    if(strlen($text_number) >= $pos){
        $choice_num = $choice_num * $pos;
    }
  
    $pos_inverse = $pos * -1;
    $digit = substr($text_number, $pos_inverse);
    $dif = $choice_num - (int)$digit;
    $choice = $total + $dif;
    $_SESSION['test'][] = "[$pos] $choice_num - $digit = $dif + $total ==> $choice";
  
    if($choice < $total){  //ถ้าคำนวณแล้วน้อยกว่าผลรวมไม่ต้องแสดง
        $choice = '';
    }
  
    return $choice;
  
}

$choice1 = create_choice($total, 1);
$choice2 = create_choice($total, 2);
$choice3 = create_choice($total, 3);
$choice4 = create_choice($total, 4);
$choice5 = create_choice($total, 5);
$choice6 = create_choice($total, 6);
$choice7 = create_choice($total, 7);

echo '<br/>ตัวเลือกที่ 1 : ', $choice1;
echo '<br/>ตัวเลือกที่ 2 : ', $choice2;
echo '<br/>ตัวเลือกที่ 3 : ', $choice3;
echo '<br/>ตัวเลือกที่ 4 : ', $choice4;
echo '<br/>ตัวเลือกที่ 5 : ', $choice5;
echo '<br/>ตัวเลือกที่ 6 : ', $choice6;
echo '<br/>ตัวเลือกที่ 7 : ', $choice7;

echo '<hr/>';
echo '<h3>ตรวจสอบการทำงานของโค้ด PHP</h3>';
foreach($_SESSION['test'] as $data){
    echo '<br/>', $data;
}

?>


เมื่อรันโค้ด PHP ด้านบนนี้ ผลลัพธ์ของโปรแกรมที่ได้จะเป็นดังนี้

PHP ตัวเลือกจำนวนเงิน ที่ลูกค้าชำระ
ในบทความหน้า เราจะมาดูวิธีเขียนโปรแกรม PHP สร้างข้อมูลเป็นอาร์เรย์ และวนลูปแสดงผลเป็นปุ่มให้เลือกกดรับเงินกันอีกครั้งครับ