บทที่ 5 ตัวดำเนินการและพิจน์ใน PHP

ตัวดำเนินการและนิพจน์ใน PHP

5.1 ความหมายของตัวดำเนินการและประเภทของตัวดำเนินการ

       ตัวดำเนินการ คือ เครื่องหมายต่างๆ ที่ใช้ในการคำนวณ ที่ใช้ในการคำนวณ หรือการทำฟังก์ชันทางคณิตศาสตร์ตัวดำเนินการบางตัวให้ผลลัพธ์เป็นตัวเลขใดๆ  ตัวดำเนินการบางตัวให้ผลลัพธ์เป็นค่าความจริงเป็นจริง (True) หรือเท็จ (Fales) เท่านั้น ตัวดำเนินการบางตัวก็ใช้จัดการเฉพราะข้อมุลที่เป็นสตริงหรือเป็นอักขะเท่านั้น และตัวดำเนินการบางตัวก็ให้ผลลัพธ์เป็นเลขฐาน 2 ซึ่งเราสามารถแบ่งประเภทของตัวดำเนินการในภาษา PHP ได้ เป็น 5 ประเภท
      1. ตัวดำเนินการทางคณิตศาสตร์ (Arithmetic Operator)
      2. ตัวดำเนินการเปรียบเทียบ(Comparison Operator)
      3. ตัวดำเนินการทางตรรกะ(Logical Operator)
      4. ตัวดำเนินการทางสตริง( StringOperator)
      5. ตัวดำเนินการทางระดับบิต(BitwiseOperator)

5.2 ตำดำเนินการทางคณิตศาสตร์
       ตัวดำเนินการทางคณิตศาสตร์เป็นตัวดำเนินการในกลุ่มที่เกี่ยวข้องกับการคำนวณหาผลลัพธ์
ต่างๆทางคณิตศาสตร์ ผลลัพธ์จากการใช้ตัวดำเนินการทางคณิตศาสตร์นี้จะได้ผลลัพธ์เป็นตัวเลขใดๆ
พิจารณาตัวดำเนินการในกลุ่มนี้แต่ละตัวพร้อมทั้งตัวอย่างประกอบจากตารางประกอบจากตารางสรุปต่อไปนี้ 
      

5.3 ตัวดำเนินการเปรียบเทียบ

ตัวดำเนินการเปรียบเทียบ            ความหมาย                                ตัวอย่าง

= (เครื่องหมายเท่ากับ)
เท่ากับ
A1=B1
> (เครื่องหมายมากกว่า)
มากกว่า
A1>B1
< (เครื่องหมายน้อยกว่า)
น้อยกว่า
A1<B1
>= (เครื่องหมายมากกว่าหรือเท่ากับ)
มากกว่าหรือเท่ากับ
A1>=B1
<= (เครื่องหมายน้อยกว่าหรือเท่ากับ)
น้อยกว่าหรือเท่ากับ
A1<=B1
<> (เครื่องหมายไม่เท่ากับ)
ไม่เท่ากับ
A1<>B1


5.4 ตัวดำเนินทางตรรกะ
       ตัวดำเนินการทางตรรกะเป็นตัวที่ดำเนินที่ใช้การเชื่อมค่าความจริงต่างๆ โดยเฉพาะการนำตัวดำเนินการทางตรรกะนี้ไปประยุกต์ใช้กับคำสั่งตรวจวอบเงื่อนไข ผลลัพธ์จากการใช้ตัวดำเนินการทางตรรกะจะได้ผลลัพธ์ที่มีค่าความจริงเป็นจริง (True) หรือเท็จ (False) ตัวดำเนินการทางตรรกะมีทั้งหมด 4 ตัว คือ ตัวดำเนินการและ(And), ตัวดำเนินการหรือ (Or), ตัวดำเนินการ (Not) และตัวดำเนินการ xor (Exclusive Or ) ก่อนอื่นให้ทำการพิจารณาผลจากการใช้ตัวดำเนินการทั้ง 4 นี้














5.5 ตัวดำเนินการสตริง
       ตัวดำเนินการทางสตริงเป็นตัวดำเนินการที่ใช้จัดการข้อมูลประเภทอักขระ หรือข้อความ ตัวดำเนินการสตริง จะมีเพียง 1 ตัว  ดำเนินการคือ ตัวดำเนินการต่อสตริง (Concatenation Operation) สัญลักษณ์ที่ใช้เป็นเครื่องมือ . (จุด) โดยตัวดำเนินการต่อสตริงนี้สามารกถใช้เชื่อมต่อสตริง 2 สตริงเข้าด้วยกัน หรือใช้เชื่อมต่อสตริงกับข้อมูลในตัวแปรก็ได้












5.6 ตัวดำเนินการระดับบิต
        ตัวดำเนินการระดับบิตเป็นตัวดำเนินการที่กระทำกับตัวเลขฐาน 2 ดังนั้นก่อนที่ตัวดำเนินการในกลุ่มนี้จะทำการประมวลผลก็จะมีการแปลงตัวเลขใดๆ ให้เป็นกลุ่มเลขฐาน 2 เสียก่อน การทำงานของการดำเนินการในกลุ่มนี้สามารถสรุปได้ดังตารางต่อไปนี้







   จากตารางข้างต้นตัวดำเนินการ Shift left จะทำการแปลงตัวเลข 14 ให้เป็นเลขฐาน 2 ซึ่งมีค่าเท่ากับ 1110 หลังจากนั้นจะทำการเลื่อนบิตไปทางซ้าย 2 ตำแหน่ง และสุดท้ายก็จะทำการแปลงตัวเลขฐาน 2 กลับไปเป็นเลขฐานสิบตามเดิม ดังนี้ 











     เช่นเดียวกันในการใช้ดำเนินการ Shift left ก็จะทำการแปลงตัวเลข 14 ให้เป็นเลขฐาน 2ซึ่งมีค่าเท่ากับ 1110 หลังจากนั้นก็จะทำการเลื่อนบิตไปทางขวา 2 ตำแหน่ง และสุดท้ายก็จะทำการแปลงตัวเลขฐาน 2 กลับไปเป็นเลขฐานสิบตามเดิม ดังนี้ 









 
5.7 นิพจน์และลำดับการประมวลผลของนิพจน์

        นิพจน์ (Expression) เกิดจาก ค่าคงที่ ตัวแปร หรือ  ตัวเลข มากระทำกับตัวดำเนินการ (Operator) ในทางคณิตศาสตร์นิจน์เราอาจจะมองว่าเป็น สมการ หรือ อสมการก็ได้