วันเสาร์ที่ 20 พฤศจิกายน พ.ศ. 2553

ตัวแปรและตัวดำเนินการ

ตัวแปรและตัวดำเนินการ

ตัวแปร (Variables)

 เรื่องของตัวแปรใน PHP นี้เป็นเรื่องที่ง่ายมากครับ เพราะ PHP มีการจัดการตัวแปรที่ดีตามภาษา C อีกทั้งยังง่าย จากที่ผมเคยเขียน PHP มาผมยังไม่เคยปะะกาศตัวแปรให้เสียเวลาเลย

 โดยที่หลักเกณฑ์ในการตั้งชื่อตัวแปรใน PHP ก็จะเหมือน ๆ กับโปรแกรมทั่ว ๆ ไป เช่น
  • ชื่อของตัวแปรไม่สามารถมีช่องว่างได้ เช่น $student name จะเห็นว่ามีช่องว่างแบบนี้ไม่ได้ครับ
  • ชื่อของตัวแปรจะสามารถมีเครื่องหมาย _ (Under Score) ได้อย่างเดียว จากข้อแรกเราจะแก้ปัญหาได้ว่า $student_name เป็นต้น
  • สำหรับตัวแปรของ PHP นี้ ตัวอักษรเล็กจะมีค่าไม่เหมือนกันตัวอักษรตัวใหญ่ครับ เช่น $student จะเป็นตัวแปรคนละตัวกับ $Student และ $STUDENT เพราะฉนั้นเวลาตั้งชื่อตัวแปรจะต้องจำให้ดีว่าตัวไหนตัวเล็ก ตรงไหนเป็นตัวใหญ่
  • และที่พิเศษ คงจะเห็นแล้วครับว่าชื่อตัวแปร PHP นั้นจะมีเครื่องหมาย $ นำหน้า และจะต้องตามด้วยตัวอักษรเท่านั้นนะครับ จะตามด้วยตัวเลขหรือเครื่องหมายใด ๆ ไม่ได้เลย เช่น $1student แบบนี้ไม่ได้ครับ ส่วน $_student ก็ไม่ได้เช่นกัน
  • และที่สำคัญก็คือ ชื่อของตัวแปรน่าจะสื่อถึงข้อมูลด้วย เช่นตัวแปรรับค่ารหัสนักศึกษา ก็น่าจะตั้งชื่อว่า $student_id หรือ $student_code เป็นต้น
 PHP มีประเภทตัวแปรให้เราได้ใช้หลัก ๆ อยู่ 6 รูปแบบ ได้แก่
  • Integer : เป็นข้อมูลแบบตัวเลขจำนวนเต็ม
  • Double : เป็นข้อมูลแบบตัวเลขที่มีจุดทศนิยม
  • String : เป็นข้อมูลที่เป็นตัวอักษร
  • Boolean : เป็นข้อมูลที่มีค่าได้แค่ 2 ค่า นั่นก็คือ True และ False
  • Object : เป็นตัวแปรประเภทพิเศษ ซึ่งจะอธิบายแยกออกไปอีกทีครับ
  • Array : เป็นตัวแปรประเภทชุดของข้อมูล ซึ่งจะอธิบายแยกอีกเช่นกัน
 ส่วนการประกาศค่าตัวแปรนั้น PHP จะยุบขั้นตอนให้มารวมกับการตั้งค่าเริ่มต้นให้กับตัวแปรเลย เช่น3
  • $student_id = 123; <-- ทำการประกาศตัวแปร $student ให้เป็นแบบ Integer และมีค่าเริ่มต้น = 123
  • $student_name = "วัชรพงษ์ ณ เชียงใหม่"; <-- ประกาศให้ $student_name เป็นแบบ String และมีค่าเริ่มต้นเป็น วัชรพงษ์ ณ เชียงใหม่ เป็นต้น
 ส่วนการเปลี่ยนประเภทของตัวแปรนั้นก็มีวิธีการที่เป็นทางการอยู่เหมือนกันครับ แต่ที่ผมเคยเจอก็คือ PHP จะมีความสามารถเปลี่ยนประเภทตัวแปรแบบกลางอากาศเลย ก็คือ ผมกำหนดค่าเริ่มต้นให้กับตัวแปรตัวนึงให้เป็นแบบ String ซึ่งปกติมันจะนำมาคำนวณไม่ได้ แต่ผมเขียนโปรแกรมผิด ดันเอามันมาบวกด้วยตัวแปรอีกตัวนึง PHP จัดการบวกให้เรียบร้อยเลยครับ ซึ่งความสามารถนี้ ก็คงจะเหมือนกับการเขียนโปรแกรมภาษา PERL ครับ ตัวอย่างเช่น
$student_id = "123";
$result = $student_id - 10;
ผลที่ได้ก็คือ $result จะเป็นตัวแปรประเภท Integer และมีค่า = 113
นี่คือการเปลี่ยนประเภทตัวแปรแบบกลางอากาศของ PHP ครับ
 ส่วนการเปลี่ยนประเภทตัวแปรแบบเป็นเรื่องเป็นราวนั้น ใน PHP จะใช้ฟังก์ชัน settype() ครับ ดูจากตัวอย่างเลย
$student_id = "123";
echo gettype($student_id); //ผลที่ได้คือ String

settype($student_id, "interger"); //ทำการเปลี่ยนประเภทเป็น Integer
echo gettype($student_id); //ผลที่ได้คือ Integer
  • ตรงนี้จะเป็นการเปลี่ยนประเภทตัวแปรอย่างเป็นเรื่องเป็นราวตามที่ได้บอกมาแล้ว เลือกเอาเองครับว่าจะใช้แบบไหน ... (ผมเลือกแบบแปลงร่างกลางอากาศ ... )
  • ส่วนฟังก์ชัน gettype() นั้นเอาไว้หาว่าตัวแปรตัวนั้นเป็นตัวแปรประเภทอะไรครับ
 เรื่องตัวแปรก็คงจะมีเท่านี้ครับ ...

ตัวดำเนินการและนิพจน์ (Operators & Expressions)

ตัวดำเนินการทางคณิตศาสตร์

 ก็มีเหมือนกับภาษาทั่วไปก็คือ = + - * / % ( ) ครับ ง่าย ๆ ..

 ส่วน % ไม่ใช่เปอร์เซนต์นะครับ แต่เป็นการหารเอาเศษ เช่น 5 % 2 จะได้ 5 เป็นต้น

ตัวดำเนินการด้านการเชื่อมหรือรวมค่า

 PHP จะใช้เครื่องหมาย . ในการเชื่อมหรือรวมค่า ดูจากตัวอย่างครับ
$sname = "ภูมิรวิชญ์ ";
$ssurname = "ณ เชียงใหม่";
echo $sname . $ssurname;

จะได้ค่าออกมาเป็น ภูมิรวิชญ์ ณ เชียงใหม่
ตัวดำเนินการพิเศษ

 ก็เป็นไปตามหลักการณ์ของภาษา C ครับ จะมีอะไรเป็นพิเศษที่ผมในฐานะที่เป็นโปรแกรมเมอร์ที่เติบโตมากับภาษา Basic ยังติดใจตรงนี้

 ก็คือ += , -= , *= , /= , %= และ .= เป็นอะไรที่สะดวกมาครับ

 ความหมายของ += ก็คือ การบวกค่าตัวเอง เช่น
$bhumi += 10;
จะมีความหมายเหมือนกับ
$bhumi = $bhumi + 10;
  • จะเห็นว่าสะดวกกว่า Basic เยอะครับ
  • ส่วนตัวอื่น ๆ ก็มีความหมายเหมือนกันครับ
 อีกส่วนนึงจะเป็นตัวดำเนินการพิเศษที่ทำหน้าที่ในการเพิ่มค่าตัวเองขึ้นหรือลดค่าตัวเองไปอีก 1 ค่า ได้แก่
  • $bhumi++;
  • ++$bhumi;
  • $bhumi--;
  • --$bhumi;
เครื่องหมายบวกหรือลบ จะอยู่ด้านหน้าหรือหลัง จะเห็นความแตกต่างจากการนำไปใช้ใน Loop ครับ
ตัวดำเนินการด้านการเปรียบเทียบและตรรก

==
ซ้าย เท่ากับ ขวา
!=
ซ้าย ไม่เท่ากับ ขวา
>
ซ้าย มากกว่า ขวา
>=
ซ้าย มากกว่าหรือเท่ากับ ขวา
<
ซ้าย น้อยกว่า ขวา
<=
ซ้าย น้อยกว่าหรือเท่ากับ ขวา
||
หรือ
or
หรือ
&&
และั
and
และ
!
ไม่
xor
ซ้าย หรือ ขวา เป็นจริง แต่ห้ามเหมือนกัน
===
ซ้าย มีค่าและมีชนิดเท่ากับ ขวา


ไม่มีความคิดเห็น:

แสดงความคิดเห็น