ในการเขียนโปรแกรม สิ่งนึงที่จะขาดไม่ได้เลยก็คือ "ตัวแปร" หรือตัวที่เก็บค่าต่าง ๆ เพื่อใช้ในการคำนวณและเอาไปแสดงผล
<php
echo 50 + 3;
echo "<br />";
echo 17 - 1;
?>
จากตัวอย่างข้างบน ผลลัพธ์ที่ได้ออกมาคือ 53 กับ 16 แต่ถ้าเราต้องการนำผลลัพธ์ที่ได้ไปคำนวณต่อก็จำเป็นต้องเก็บค่าไว้ในตัวแปรก่อน โดยตัวแปรก็คือชื่อที่เราตั้งขึ้นเพื่อใช้อ้างอิงถึงค่าที่เรานำมาเก็บไว้ ซึ่งในการประกาศตัวแปรของภาษา PHP จะมีข้อกำหนดอยู่เล็กน้อย ดังนี้
- ชื่อของตัวแปรจะต้องขึ้นต้นด้วย dollar sign ($) เสมอ
- หลัง $ คือชื่อของตัวแปรที่ขึ้นต้นด้วยตัวอักษร a-z, A-Z หรือเครื่องหมาย underscore (_) เท่านั้น
- ตัวถัดจากชื่อของตัวแปรเป็นตัวอักษร a-z, A-Z หรือตัวเลข หรือเครื่องหมาย underscore (_)
- ชื่อของตัวแปรเป็น Case Sensitive ซึ่งหมายถึงตัวพิมพ์ใหญ่กับตัวพิมพ์เล็กถือเป็นคนละตัวกัน เช่น $myvar ≠ $myVar เป็นต้น
<php
$myVar = "Hello World";
$x = "This is my web";
echo $myVar;
echo "<br />";
echo $x;
?>
การประกาศตัวแปรทำได้โดยให้ชื่อตัวแปรอยู่ฝั่งซ้ายของเครื่องหมาย equal (=) ส่วนฝั่งขวาจะเป็นค่าที่ต้องการจะเก็บ โดยชื่อตัวแปรสามารถตั้งได้ตามที่เพื่อน ๆ ชอบ ซึ่งตัวอย่างในบทความนี้จะตั้งชื่อตัวแปรง่าย ๆ เพื่อให้เพื่อน ๆ เห็นภาพเท่านั้น เวลาเขียนโปรแกรมเพื่อใช้งานจริงควรจะตั้งให้มันสื่อถึงค่าของตัวแปรด้วยนะ เช่น ตัวอย่างข้างบนชื่อตัวแปร $x ไม่สื่อถึงค่าที่มันเก็บไว้ ในกรณีที่ต้องไล่โค้ดเพื่อแก้ไขอาจจะทำให้เพื่อน ๆ งงได้ว่าตัวแปรนี้ใช้เก็บค่าอะไรไว้อยู่
ชนิดของตัวแปร
<php
$booleanVar1 = true;
$booleanVar2 = false;
?>
Boolean: เป็นตัวแปรที่มีค่าได้แค่ 2 ค่า นั่นคือ true หรือ false เท่านั้น ส่วนมากใช้ในการตรวจสอบเงื่อนไข
<php
$stringVar1 = 'เสือพึ่งป่า';
$stringVar2 = "น้ำพึ่งเรือ $stringVar1";
$stringVar3 = 'น้ำพึ่งเรือ $stringVar1';
$stringVar4 = "150";
echo $stringVar2;
echo "<br />";
echo $stringVar3;
echo "<br />";
echo $stringVar4;
echo "<br />";
echo "M".$stringVar4; // เชื่อมต่อข้อความ
?>
String: เป็นข้อมูลชนิดตัวอักษรที่อยู่ภายในเครื่องหมาย single quote (') หรือ double quote (") โดยตัวแปรที่อยู่ภายในเครื่องหมาย double quote (") จะถูกประมวลผลด้วยซึ่งต่างจาก single quote (') ที่จะไม่ประมวลผลตัวแปรหรืออักษรพิเศษ ส่วนตัวแปร
$stringVar4 จะเป็นข้อมูลประเภท String เนื่องจากอยู่ภายในเครื่องหมาย single quote (') หรือ double quote (") นอกจากนี้เรายังสามารถนำตัวแปร ข้อความ หรือตัวอักษรมาเชื่อมต่อกันได้ด้วยเครื่องหมาย .
<php
$numericVar1 = 15;
$numericVar2 = 20.5;
echo $numberVar1;
echo "<br />";
echo $numberVar2;
?>
Numeric: เป็นข้อมูลชนิดตัวเลขที่สามารถเอาไปคำนวณร่วมกับเครื่องหมายทางคณิตศาสตร์ได้
<php
$arrayVar = array("Gaim", "Drive", "Ghost", "Ex-Aid");
$arrayVar['name'] = "Kabuto";
echo $arrayVar[0];
echo "<br />";
echo $arrayVar[1];
echo "<br />";
echo $arrayVar[2];
echo "<br />";
echo $arrayVar[3];
echo "<br />";
echo $arrayVar['name'];
echo "<br />";
print_r($arrayVar);
?>
Array: เป็นตัวแปรที่เก็บค่าในลักษณะของชุดข้อมูล มีรูปแบบการประกาศตัวแปรคือ
ชื่อตัวแปร = array( "index1" => "value1", "index2" => "value2", ..... );
หรือ
ชื่อตัวแปร = array( "value1", "value2", ..... );
ในการประกาศตัวแปรแบบระบุ index (รูปแบบบน) เราสามารถระบุ index เป็นตัวอักษรได้ ส่วนการประกาศตัวแปรแบบไม่ระบุ index (รูปแบบล่าง) index จะเริ่มต้นที่ 0 และเรียงไปเรื่อย ๆ ซึ่ง index จะใช้ในการอ้างอิงถึงค่า value หนึ่ง ๆ ดังนั้นเวลาแสดงข้อมูลจึงจำเป็นต้องระบุ index ด้วย หรือถ้าต้องการแสดงข้อมูลทั้งหมดที่เก็บไว้ใน array ให้ใช้คำสั่ง
print_r(ตัวแปร array)
การกำหนดชนิดของตัวแปร
<php
$myVar1 = "5bar"; // String
$myVar2 = true; // Boolean
// การใช้งานฟังก์ชัน settype(ชื่อตัวแปร, "ชนิดของตัวแปร");
settype($myVar1 , "integer");
settype($myVar2 , "string");
echo $myVar1;
echo "<br />";
echo $myVar2;
?>
ในการประกาศตัวแปรของภาษา PHP เราไม่จำเป็นต้องระบุชนิดของตัวแปร เพราะ PHP จะทำการกำหนดชนิดให้เองโดยอัตโนมัติ จึงทำให้การประกาศตัวแปรทำได้ง่าย แต่เราสามารถกำหนดชนิดของตัวแปรได้ด้วยคำสั่ง
settype(ชื่อตัวแปร, "ชนิดของตัวแปร"); โดยผลลัพธ์ของคำสั่งนี้คือ
true เมื่อแปลงตัวแปรสำเร็จ และ
false เมื่อแปลงตัวแปรไม่สำเร็จ ซึ่ง
ชนิดของตัวแปร มีค่าดังต่อไปนี้
- "boolean"
- "integer"
- "float"
- "string"
- "array"
- "object"
- "null"
<php
$stringVar = "54";
$numericVar = 5;
echo $stringVar + $numberVar;
echo "<br />";
echo gettype($stringVar);
echo "<br />";
echo gettype($numericVar);
?>
จากตัวอย่างข้างบน เรานำตัวแปรชนิดตัวอักษรมาบวกกับตัวแปรชนิดตัวเลข ถ้าเป็นภาษาโปรแกรมบางภาษาจะมีการแจ้งเตือนข้อผิดพลาด แต่สำหรับ PHP จะทำการแปลงชนิดของตัวแปร
$stringVar จากตัวอักษรเป็นตัวเลขโดยอัตโนมัติเพื่อให้สามารถนำไปคำนวณค่าได้ จริง ๆ ถ้าถามว่าสะดวกดีไหมก็สะดวกดีนะ แต่เพื่อให้เว็บของเรามีความปลอดภัย เราควรจะเช็คชนิดของตัวแปรด้วย ยิ่งในกรณีที่รับค่ามาจากผู้ใช้งานอื่น ยิ่งจำเป็นต้องมีการตรวจสอบข้อมูลที่ผู้ใช้งานกรอกเข้ามาก่อนจะนำไปบันทึกลงในฐานข้อมูล โดยคำสั่งที่ใช้ในการตรวจสอบชนิดของตัวแปรคือ
gettype(ชื่อตัวแปร); โดยผลลัพธ์ที่ได้มีค่าดังต่อไปนี้
- "boolean"
- "integer"
- "double"
- "string"
- "array"
- "object"
- "resource"
- "NULL"
- "unknown type"
ค่าคงที่
<php
define("name", "AiNoTsubasa");
define("year", 2559);
echo name;
echo "<br />";
echo year;
?>
ค่าคงที่ (Constants) คือชื่อที่กำหนดขึ้นมาเพื่อใช้เก็บค่าใดค่าหนึ่งที่ไม่ค่อยมีการเปลี่ยนแปลง มีรูปแบบคำสั่ง
define(ชื่อค่าคงที่, ค่าที่ต้องการเก็บ);
สำหรับบทความตอนนี้เพื่อน ๆ ก็จะได้รู้จักวิธีประกาศตัวแปรและค่าคงที่แล้ว ในบทความถัดไปเราจะเอาตัวแปรไปคำนวณกัน แล้วพบกันใหม่ในบทความต่อไป
----- สารบัญ -----