1 / 30

PHP: Hypertext Preprocessor

บทที่ 11 [Numbers ]. PHP: Hypertext Preprocessor. สัญญา เครือหงษ์ ภาควิชาวิทยาการคอมพิวเตอร์และเทคโนโลยีสารสนเทศ คณะวิทยาศาสตร์ มหาวิทยาลัยนเรศวร. วัตถุประสงค์การเรียนรู้ประจำบท. ในบทนี้จะอธิบายการทำงานกับเลขจำนวน (Numbers ). กิจกรรมการเรียนการสอน.

hazina
Télécharger la présentation

PHP: Hypertext Preprocessor

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. บทที่ 11 [Numbers] PHP:Hypertext Preprocessor สัญญา เครือหงษ์ ภาควิชาวิทยาการคอมพิวเตอร์และเทคโนโลยีสารสนเทศ คณะวิทยาศาสตร์ มหาวิทยาลัยนเรศวร

  2. วัตถุประสงค์การเรียนรู้ประจำบทวัตถุประสงค์การเรียนรู้ประจำบท • ในบทนี้จะอธิบายการทำงานกับเลขจำนวน (Numbers)

  3. กิจกรรมการเรียนการสอนกิจกรรมการเรียนการสอน • บรรยายโดยผู้สอนและใช้เอกสารประกอบการสอนของผู้สอน • สอนโดยใช้สื่อคอมพิวเตอร์ผ่านเครื่องฉาย • อภิปรายในชั้นเรียนร่วมกัน • ให้นิสิตค้นคว้าเพิ่มเติมจากตำราและเอกสารที่เกี่ยวข้อง • ทำแบบฝึกหัดท้ายบท

  4. การประเมินผล • ประเมินผลจากการตอบคำถามและอภิปรายในชั้นเรียน • ทำแบบฝึกหัดท้ายบท • ทำรายงานส่ง

  5. เลขจำนวนเต็ม สามารถเขียนค่าจำนวนเต็ม (Integer Literal)ในรูปฐานสิบ (Decimal), ฐานสิบหก (Hexadecimal) หรือฐานแปด (Octal) ก็ได้ การเขียนค่าในรูปฐานแปดให้นำหน้าด้วย 0 (ศูนย์) และการเขียนค่าในรูปฐานสิบหกให้นำหน้าด้วย 0x (ศูนย์ เอ็กซ์) เช่น $a = 1234; // ค่าจำนวนเต็มในรูปฐานสิบ $a = -123; // ค่าจำนวนเต็มลบในรูปฐานสิบ $a = 0123; // ค่าจำนวนเต็มในรูปฐานแปด (มีค่าเท่ากับ 83 ฐานสิบ) $a = 0x1A; // ค่าจำนวนเต็มในรูปฐานสิบหก (มีค่าเท่ากับ 26 ฐานสิบ)

  6. Integer Overflow ถ้าหากระบุค่าจำนวนเต็มที่เกินช่วงค่าของชนิดข้อมูล Integer PHPจะกำหนดเป็นชนิดข้อมูล float ให้แทน และถ้าดำเนินการใดๆ ที่ให้ผลลัพธ์เป็นเลขจำนวนเต็มที่เกินช่วงค่าของชนิดข้อมูล integerผลลัพธ์นั้นก็จะกลายเป็นชนิด float เช่นเดียวกัน

  7. Integer Overflow <? $number1 = 2147483647; echo "บรรทัด 1 : "; var_dump($number1); // แสดงค่าและชนิดข้อมูลของตัวแปร $number1 echo "<br>"; $number2 = 2147483648; echo "บรรทัด 2 : "; var_dump($number2); // แสดงค่าและชนิดข้อมูลของตัวแปร $number2 echo "<br>"; echo "บรรทัด 3 : " ; var_dump(0xffffffff); // แสดงค่าและชนิดข้อมูลของค่า ffffffffฐานสิบหก echo "<br>"; $million = 1000000; $large_number = 50000 * $million ; // กำหนด $large_numberมีค่า 5 หมื่นล้าน echo "บรรทัด 4 :" ; var_dump($large_number); // แสดงค่าและชนิดข้อมูลของตัวแปร $large_number echo "<br>"; ?> integer_overflow.php

  8. การหารเลขจำนวนเต็ม ตัวดำเนินการ / (หาร) ในภาษา PHP จะให้ผลลัพธ์เป็นค่าชนิด float เสมอ แม้ว่าตัวถูกดำเนินการจะเป็นชนิด integer ทั้งคู่ก็ตาม อาจแปลงผลหารไปเป็นชนิด integerโดยใช้ตัวดำเนินการ (int) ซึ่งเศษจะถูกปัดลง (ตัดทิ้ง) เสมอ หรืออาจประมาณค่าเป็นเลขจำนวนเต็มโดยใช้ฟังก์ชั่น round ก็ได้ (แต่ค่าจำนวนเต็มที่ได้จะเป็นชนิด float) ซึ่งเศษตั้งแต่ 0.5 ขึ้นไปจะถูกปัดขึ้น

  9. การหารเลขจำนวนเต็ม <? echo "บรรทัด 1 : "; var_dump(25/7); // แสดงค่าและชนิดข้อมูลของนิพจน์ 25/7 echo "<br>"; echo "บรรทัด 2 : "; var_dump((int)(25/7)); // แสดงค่าและชนิดข้อมูลของนิพจน์ 25/7 หลังจากแปลงเป็นชนิด integer แล้ว echo "<br>"; echo "บรรทัด 3 : "; var_dump(round(25/7)); // แสดงค่าและชนิดข้อมูลของนิพจน์ 25/7 หลังจากประมาณค่าเป็นเลขจำนวนเต็มโดยใช้ฟังก์ชั่น round แล้ว echo "<br>"; ?> integer_division.php

  10. การแปลงเป็นชนิดข้อมูล integer การแปลง (convert)ค่าใดๆ เป็นชนิด integerให้ใช้ตัวดำเนินการ (int) หรือ (integer) ซึ่งการดำเนินการนี้เรียกว่า Casting อย่างไรก็ตาม ในกรณีส่วนใหญ่ไม่จำเป็นต้องทำ Casting เอง เนื่องจาก PHP จะแปลงค่าเป็นชนิด integer ให้โดยอัตโนมัติอยู่แล้วถ้าหากตัวดำเนินการ ฟังก์ชั่น หรือคำสั่งนั้นต้องการค่าชนิด integer ในการทำงาน การแปลงค่าชนิดต่างๆ เป็นชนิด integer มีเงื่อนไขดังต่อไปนี้ • ถ้าแปลงค่าชนิด Boolean ไปเป็น integer ค่า FALSE จะกลายเป็น 0 และค่า TRUE จะกลายเป็น 1 • เมื่อแปลงค่าชนิด float ไปเป็น integer ตัวเลขหลังจุดทศนิยมจะถูกตัดทิ้งไป แต่ถ้าค่าชนิด float นั้นมีค่าเกินขอบเขตของชนิดข้อมูล integer ผลลัพธ์จะไม่มีการกำหนด (undefined)

  11. เลขจำนวนทศนิยม ค่าจำนวนทศนิยม (Float Literal) สามารถเขียนได้หลายรูปแบบ เช่น โดยรูปแบบ AeN ( e จะเป็นตัวเล็กหรือตัวใหญ่ก็ได้) จะหมายถึง A x 10N ดังนั้น -1.2e3 จึงเท่ากับ -1.2 x 103 = -1200 และ 7E-5 เท่ากับ 7 x 10-5 = 0.0007 (เป็นค่าบวก เนื่องจาก -5 คือเลขชี้กำลังของ 10) $a = 1.234; $a = -1.2e3; $a = 7E-5; หมายเหตุ ในรูปแบบ Aenหรือ AEN นั้น A สามารถเป็นตัวเลขที่มีจุดทศนิยมได้ (เช่นค่าที่กำหนดให้ตัวแปร $b ข้างต้น) ส่วน N จะต้องเป็นจำนวนเต็มเท่านั้น แต่ทั้ง A และ N อาจมีเครื่องหมายลบข้างหน้าก็ได้

  12. ปัญหาเรื่องความแม่นยำของชนิดข้อมูล float เป็นเรื่องธรรมดาสำหรับชนิดข้อมูล float ที่บางครั้งการเก็บเลขจำนวนทศนิยมง่ายๆ เช่น 0.1 หรือ 0.7 จะมีการสูญเสียความแม่นยำ (precision) ของข้อมูลไปบ้างเล็กน้อย ซึ่งอาจทำให้รู้สึกแปลกใจกับผลลัพธ์ที่ได้ เช่น ดังนั้น จึงไม่ควรไว้ใจผลลัพธ์ของการคำนวณเลขทศนิยมมากเกินไป และไม่ควรเปรียบเทียบเลขทศนิยม 2 ค่าว่าเท่ากันหรือไม่ (เพราะมีโอกาสที่มันจะไม่เท่ากันทั้งๆที่ควรจะเท่ากัน) ถ้าต้องการความแม่นยำในการคำนวณเลขทศนิยมจริงๆ ให้ใช้ฟังก์ชั่นในกลุ่ม GMP หรือกลุ่ม BCMath ซึ่งสามารถกำหนดความแม่นยำในการคำนวณทางคณิตศาสตร์ได้เอง echo (int) ((0.1+0.7)*10)

  13. การแปลงสตริงเป็นเลขจำนวนการแปลงสตริงเป็นเลขจำนวน convert_string_to_number.php $num = 1+"10.2 Little Piggies"; // บรรทัด 6 : ค่าสตริง "10.2 Little Piggies" จะถูกแปลงเป็นค่าจำนวนทศนิยม 10.2 show_var($num); $num = "10.0 pigs "+ 1; // บรรทัด 7 : ค่าสตริง "10.0 pigs" จะถูกแปลงเป็นค่าจำนวนทศนิยม 10.0 show_var($num); $num = "10.0 pigs " + 1.0 ; // บรรทัด 8 show_var($num); function show_var($var){ static $i = 1 ; echo "บรรทัด {$i}: "; var_dump($var); echo "<br>"; $i++; } ?> <? $num = 1+"10.5"; // บรรทัด 1 : ค่าสตริง "10.5" จะถูกแปลงเป็นค่าจำนวนทศนิยม 10.5 show_var($num); $num = 1+"-1.3e3"; // บรรทัด 2 : ค่าสตริง "-1.3e3" จะถูกแปลงเป็นค่าจำนวนทศนิยม -1.3 x 10 หรือ 1300 show_var($num); $num = 1+"bob-1.3e3"; // บรรทัด 3 : ค่าสตริง "bob-1.3e3" จะถูกแปลงเป็นค่าจำนวนเต็ม 0 show_var($num); $num = 1+"bob3"; // บรรทัด 4 : ค่าสตริง "bob3" จะถูกแปลงเป็นค่าจำนวนเต็ม 0 show_var($num); $num = 1+"10 Small Pigs"; // บรรทัด 5 : ค่าสตริง "10 Small Pigs" จะถูกแปลงเป็นค่าจำนวนเต็ม 0 show_var($num);

  14. การแปลงสตริงเป็นเลขจำนวนการแปลงสตริงเป็นเลขจำนวน หมายเหตุ คุณไม่สามารถหารหัสแอสกี้ (ASCII) ของตัวอักษรโดยใช้วิธีแปลงตัวอักษรนั้นไปเป็น integer (เหมือนที่ทำได้ในภาษา C ) การแปลงระหว่างตัวอักษรกับค่าแอสกี้ ให้ใช้ฟังก์ชั่น ord และ chrโดยฟังก์ชั่น ordจะให้ผลลัพธ์ เป็นค่าแอสกี้ของตัวอักษรที่กำหนด ส่วนฟังก์ชั่นchr จะให้ผลลัพธ์เป็นสตริง ซึ่งบรรจุตัวอักษร 1 ตัวที่มีค่าแอสกี้ตามที่กำหนด

  15. ฟังก์ชั่นที่ใช้ตรวจสอบชนิดข้อมูลฟังก์ชั่นที่ใช้ตรวจสอบชนิดข้อมูล • ฟังก์ชั่นis_int ใช้ตรวจสอบตัวแปรหนึ่งๆ ว่าเป็นชนิด integer หรือไม่ โดยจะให้ค่า TRUE ถ้าใช่ และให้ค่า FALSE ถ้าไม่ใช่ boolis_int (mixed ตัวแปร) <? $var1 = "8247"; $var2 = 76; if(is_int($var1)) echo "\$var1 คือตัวแปรชนิด integer<br>"; else echo "\$var1 ไม่ใช่ตัวแปรชนิด integer<br>"; if (is_int($var2)) echo "\$var2 คือตัวแปรชนิด integer<br>"; else echo "\$var2 ไม่ใช่ตัวแปรชนิด integer<br>"; ?>

  16. ฟังก์ชั่นที่ใช้ตรวจสอบชนิดข้อมูลฟังก์ชั่นที่ใช้ตรวจสอบชนิดข้อมูล • ฟังก์ชั่น is_float ใช้ตรวจสอบตัวแปรว่าเป็นชนิด float หรือไม่ โดยให้ค่า TRUE ถ้าใช่ และให้ค่า FALSE ถ้าไม่ใช่ • ฟังก์ชั่น is_nummeric ใช้ตรวจสอบว่าตัวแปรเป็นชนิดเลขจำนวนหรือเป็นสตริงตัวเลข (Numeric String) หรือไม่ โดยจะให้ค่า TRUE ถ้าใช่ และให้ค่า FALSE ถ้าไม่ใช่ boolis_float (mixed ตัวแปร) boolis_nummeric (mixed ตัวแปร)

  17. ฟังก์ชั่นที่ใช้ตรวจสอบชนิดข้อมูลฟังก์ชั่นที่ใช้ตรวจสอบชนิดข้อมูล is_numeric.php <? $var1 = "8247"; $var2 = "0-2619-0070"; if(is_numeric($var1)) echo "\$var1 คือเลขจำนวนหรือสตริงที่มีรูปแบบเป็นเลขจำนวน integer<br>"; else echo "\$var1 ไม่ใช่เลขจำนวนหรือสตริงที่มีรูปแบบเป็นเลขจำนวน integer<br>"; if (is_numeric($var2)) echo "\$var2 คือเลขจำนวนหรือสตริงที่มีรูปแบบเป็นเลขจำนวน integer"; else echo "\$var2 ไม่ใช่เลขจำนวนหรือสตริงที่มีรูปแบบเป็นเลขจำนวน integer"; ?>

  18. ฟังก์ชั่นที่ใช้แปลงชนิดข้อมูลฟังก์ชั่นที่ใช้แปลงชนิดข้อมูล • ฟังก์ชั่น intval ใช้แปลงค่าของตัวแปรที่ระบุไปเป็นค่าจำนวนเต็ม แต่ถ้าฟังก์ชั่นทำงานล้มเหลว จะให้ค่า 0 การใช้ฟังก์ชั่นนี้กับอาร์เรย์ไม่มีสมาชิก (อาร์เรย์ว่าง) จะได้ค่า 0 เสมอ แต่ถ้าใช้กับอาร์เรย์ที่มีสมาชิกจะได้ค่า 1 เสมอ intintval (mixed ตัวแปร)

  19. ฟังก์ชั่นที่ใช้แปลงชนิดข้อมูลฟังก์ชั่นที่ใช้แปลงชนิดข้อมูล <? echo "บรรทัด 1 : " . intval(42) . "<br>"; echo "บรรทัด 2 : " . intval(4.2) . "<br>"; echo "บรรทัด 3 : " . intval('42') . "<br>"; echo "บรรทัด 4 : " . intval('+42') . "<br>"; echo "บรรทัด 5 : " . intval('-42') . "<br>"; echo "บรรทัด 6 : " . intval(042) . "<br>"; echo "บรรทัด 7 : " . intval('042') . "<br>"; echo "บรรทัด 8 : " . intval(1e10) . "<br>"; echo "บรรทัด 9 : " . intval('1e10') . "<br>"; echo "บรรทัด 10 : " . intval(0x1A) . "<br>"; ?> intval.php

  20. ฟังก์ชั่น intval ใช้แปลงค่าของตัวแปรที่ระบุไปเป็นค่าจำนวนทศนิยม ในคู่มือ PHP บอกว่าฟังก์ชั่นนี้ใช้กับ อาร์เรย์ไม่ได้ แต่ผู้เขียนทดลองแล้วพบว่าใช้ได้ โดยจะให้ผลลัพธ์เช่นเดียวกับฟังก์ชั่น intval คือถ้าอาร์เรย์ไม่มีสมาชิกจะได้ค่า 0 (ชนิด float) เสมอ แต่ถ้าอาร์เรย์มีสมาชิกจะได้ค่า 1 (ชนิด float) เสมอ intfloatvar (mixed ตัวแปร)

  21. ฟังก์ชั่นที่ใช้ประมาณค่า/ปัดเศษฟังก์ชั่นที่ใช้ประมาณค่า/ปัดเศษ • ฟังก์ชั่น round หาค่าประมาณของเลขจำนวนโดยให้มีความแม่นยำตามที่กำหนด ความแม่นยำจะหมายถึง ตำแหน่งของตัวเลขหลังจุดทศนิยมกรณีกำหนดความแม่นยำเป็นค่าบวก สามารถกำหนดความแม่นยำเป็นค่าศูนย์หรือค่าลบได้ด้วย (ดีฟอลต์คือศูนย์) ซึ่งจะหมายถึงตำแหน่งของตัวเลขข้างหน้าจุดทศนิยม (0 = หลักหน่วย , -1= หลักสิบ ฯลฯ) float round (float เลขจำนวน [, intความแม่นยำ]) <? echo "บรรทัด 1 : " . round(3.4) . "<br>"; echo "บรรทัด 2 : " . round(3.5) . "<br>"; echo "บรรทัด 3 : " . round(3.6) . "<br>"; echo "บรรทัด 4 : " . round(3.6,0) . "<br>"; echo "บรรทัด 5 : " . round(1.9583,2) . "<br>"; echo "บรรทัด 6 : " . round(1241757,-3) . "<br>"; echo "บรรทัด 7 : " . round(5.045,2) . "<br>"; echo "บรรทัด 8 : " . round(5.045,2) . "<br>"; ?>

  22. ฟังก์ชั่นที่ใช้ประมาณค่า/ปัดเศษฟังก์ชั่นที่ใช้ประมาณค่า/ปัดเศษ • ฟังก์ชั่น ceil ให้ค่าเป็นเลขจำนวนเต็มโดยการปัดเศษขึ้น ถึงแม้ว่าผลลัพธ์จะเป็นเลขจำนวนเต็มศูนย์ แต่ชนิดข้อมูลของมันจะเป็น float • ฟังก์ชั่น floor ให้ค่าเป็นเลขจำนวนเต็มโดยการปัดเศษลง ถึงแม้ว่าผลลัพธ์ จะเป็นเลขจำนวนเต็ม แต่ชนิดข้อมูลของมันจะเป็น float float ceil (float เลขจำนวน ) float floor (float เลขจำนวน )

  23. ฟังก์ชั่นที่ใช้ประมาณค่า/ปัดเศษฟังก์ชั่นที่ใช้ประมาณค่า/ปัดเศษ ตัวอย่างแสดงการใช้ฟังก์ชั่น ceil และ floor (ให้สังเกตการปัดเศษค่าลบ) ceil_floor.php <? echo "บรรทัด 1 : " . ceil(4.3) . "<br>"; echo "บรรทัด 2 : " . ceil(9.99) . "<br>"; echo "บรรทัด 3 : " . ceil(-4.3) . "<br>"; echo "บรรทัด 4 : " . ceil(-9.99) . "<br>"; echo "บรรทัด 5 : " . floor(4.3) . "<br>"; echo "บรรทัด 6 : " . floor(9.99) . "<br>"; echo "บรรทัด 7 : " . floor(-4.3) . "<br>"; echo "บรรทัด 8 : " . floor(-9.99) . "<br>"; ?>

  24. ฟังก์ชั่นที่ใช้เปรียบเทียบค่าฟังก์ชั่นที่ใช้เปรียบเทียบค่า • ฟังก์ชั่น min ใช้หาค่าต่ำสุด โดยสามารถระบุอาร์กิวเมนต์เป็นเลขจำนวนตั้งแต่ 2 ค่าขึ้นไป หรือระบุอาร์กิวเมนต์ที่บรรจุเลขจำนวนต่างๆไว้ก็ได้ฟังก์ชั่นนี้จะประเมินสตริงที่ไม่ใช่สตริงตัวเลข (Non-Numeric Srting) เป็นค่า 0 และจะให้ผลลัพธ์เป็นสตริงนั้น ถ้าหากมันมีค่าต่ำที่สุด mixed min (mixed เลขจำนวน1, mixed เลขจำนวน2, [, mixed เลขจำนวน3 ...]) หรือ mixed min (array อาร์เรย์ที่บรรจุเลขจำนวนต่างๆ ไว้)

  25. ฟังก์ชั่นที่ใช้เปรียบเทียบค่าฟังก์ชั่นที่ใช้เปรียบเทียบค่า min.php <? echo "บรรทัด 1 : " . min(2,3,1,6,7) . "<br>"; $arr = array(2,4,5); echo "บรรทัด 2 : " . min($arr ) . "<br>"; echo "บรรทัด 3 : " . min(0,'สวัสดี') . "<br>"; echo "บรรทัด 4 : " . min('สวัสดี',0) . "<br>"; echo "บรรทัด 5ฟ : " . min('สวัสดี',-1) . "<br>"; ?>

  26. ฟังก์ชั่นที่ใช้เปรียบเทียบค่าฟังก์ชั่นที่ใช้เปรียบเทียบค่า • ฟังก์ชั่น max ใช้หาค่าสูงสุด การใช้งานจะเหมือนกับฟังก์ชั่น min mixed max (mixed เลขจำนวน1, mixed เลขจำนวน2, [, mixed เลขจำนวน3 ...]) หรือ mixed max (array อาร์เรย์ที่บรรจุเลขจำนวนต่างๆ ไว้)

  27. ฟังก์ชั่นที่ใช้จัดรูปแบบเลขจำนวนฟังก์ชั่นที่ใช้จัดรูปแบบเลขจำนวน • ฟังก์ชั่น number_format ให้ค่าสตริงที่เกิดจากการนำเลขจำนวนมาจัดรูปแบบ ฟังก์ชั่นนี้ต้องการอาร์กิวเมนต์ 1,2 หรือ 4 ตัว แต่จะขออธิบายเฉพาะกรณีระบุอาร์กิวเมนต์ 1 หรือ 2 ตัว • ถ้าระบุอาร์กิวเมนต์ตัวเดียวจะจัดรูปแบบเป็นตัวเลขจำนวนเต็ม (โดยไม่มีจุดทศนิยม) โดยมี commaคั่นตัวเลขทุก 3 หลักนับจากหลักหน่วยขึ้นไป • ถ้าระบุอาร์กิวเมนต์ 2 ตัว จะจัดรูปแบบเป็นทศนิยมที่มีจำนวนตัวเลขหลังจุดทศนิยมตามที่กำหนด และมี comma คั่นตัวเลขข้างหน้าจุดทศนิยมทุก 3 หลักนับจากหลักหน่วยขึ้นไป string number_format (float เลขจำนวน [, intจำนวนตัวเลขหลังจุดทศนิยม [, string dec_point , string thousands_sep]])

  28. ฟังก์ชั่นที่ใช้จัดรูปแบบเลขจำนวนฟังก์ชั่นที่ใช้จัดรูปแบบเลขจำนวน <? $number = 1234.56; echo number_format($number) . "<br>"; echo number_format($number,1) . "<br>"; ?> number_format.php

  29. สรุป • การเขียนค่าจำนวนเต็ม (Integer Literal) อาจเขียนในรูปของเลขฐานสิบ ฐานแปด หรือฐานสิบหกก็ได้ • เมื่อต้องการแปลงค่าใดๆ เป็นชนิด integer ให้ใช้ตัวดำเนินการ (int) หรือ (integer) หรือใช้ฟังก์ชั่น intval • การเขียนค่าจำนวนทศนิยม (Float Literal) อาจเขียนในรูปแบบที่ใช้กันทั่วไป หรือในรูปแบบวิทยาศาสตร์ คือ AeNก็ได้ ซึ่งหมายถึง A x 10N ( A คูณสิบ ยกกำลัง N) โดย A เป็นตัวเลขที่มีจุดทศนิยมได้ แต่ N ต้องเป็นเลขจำนวนเต็มเท่านั้น • เมื่อต้องการแปลงค่าใดๆ เป็นชนิด float ให้ใช้ตัวดำเนินการ (float) หรือ (double) หรือใช้ฟังก์ชั่นfloatval • ในการแปลงค่าสตริงเป็นค่าจำนวน ถ้าหากส่วนต้นหรือทั้งหมดของสตริงมีรูปแบบเป็นเลขจำนวน ก็จะได้ผลลัพธ์เป็นเลขจำนวนนั้น (ซึ่งเป็นชนิดข้อมูล integer หรือ float ขึ้นอยู่กับรูปแบบของเลขจำนวน) แต่ถ้าหากส่วนต้นของสตริงไม่ได้มีรูปแบบเป็นเลขจำนวน แม้ว่าส่วนที่ตามหลังมาจะมีรูปแบบเป็นเลขจำนวนก็ตาม จะได้ผลลัพธ์เป็นศูนย์ • ถ้าต้องการตรวจสอบค่าและชนิดข้อมูลของนิพจน์หนึ่งๆ ในโปรแกรม ให้ใช้ฟังก์ชั่น var_dumpa

  30. Thank You

More Related