การกำหนดค่าใน PHP จะใช้เครื่องหมายเท่า “=” กับเช่นเดียวกันกับภาษา C และ Java นอกจากนี้ PHP ยังสนับสนุน Combinded Operator สำหรับตัวเลขและตัวอักษรอีกด้วย ดังตัวอย่างต่อไปนี้
| <? $a = $b = ($c=2) + 3; // ผลลัพธ์ที่ได้คือ $a และ $b มีค่าเป็น 5 ส่วน $c มีค่าเป็น 2 $a = 9; $a +=4; // ผลลัพธ์ที่ได้คือ $a มีค่าเป็น 13 $st = "Good"; $st .= " Morning"; // ผลลัพธ์ที่ได้คือ $at = "Good Morning" เป็นต้น ?> |
นอกจากนี้ใน PHP 4 ยังสนุนสนุนการ Assign ค่าแบบ Reference อีกด้วย เช่น
| <? $a = 4; $b = &$a; // $b และ $a จะอ้างอิงถึงข้อมูลชุดเดียวกัน $b = 9; // ผลลัพธ์ที่ได้คือ ทั้ง $a และ $b จะมีค่าเป็น 9 ?> |
การคำนวณทางคณิตศาสตร์พื้นฐานต่างๆ ที่PHP สามารถทำได้คือการบวก การลบ การคูณ การหาร และ การหารเอาเศษ (Modulo) นอกจากนี้ยังมีการ Intrement และ Decrement อีกด้วย ซึ่งมีลักษณะการทำงานแสดงได้ดังตัวอย่างต่อไปนี้
ตัวอย่าง | การทำงาน |
| $a + $b | หาผลรวม (บวก) |
| $a - $b | หาผลต่าง (ลบ) |
| $a * $b | คูณ |
| $a / $b | หาร |
| $a % $b | หารเอาเศษ |
| $a++ | Postincrement |
| ++$a | Preincrement |
| $a-- | Postdecrement |
| --$a | Predecrement |
สำหรับผู้ที่คุ้นเคยกับภาษาเช่น C นั้นคงจะเข้าใจการทำงานของ Pre/Post Increment และ Decrement เป็นอย่างดี นั้นคือการ Assign ค่าก่อนแล้วจึงประมวลผล หรือ การ Assign ค่าหลังจากการประมวลผล สำหรับผู้ที่ไม่คุ้นเคยขอให้ดูตัวอย่างต่อไปนี้เพื่อประกอบความเข้าใจ
| <? $a=5; // $a มีค่าเป็น 5 $b=$a++; // $a มีค่าเป็น 6 $b มีค่าเป็น 5 $c=++$a; // $a และ $c มีค่าเป็น 6 $d=--$c; // $c และ $d มีค่าเป็น 5 $e=$d--; // $e มีค่าเป็น 5 $d มีค่าเป็น 4 ?> |
การเปรียบเทียบค่าบน PHP จะให้คำตอบเป็นจริงหรือเท็จเช่นเดียวกันกับภาษาอื่นๆ โดยการเปรียบเทียบจะใช้ได้กับข้อมูลทุกประเภท ไม่ว่าจะเป็นตัวอักษร หรือ จำนวนก็ตาม สัญลักษณ์ของเครื่องหมายที่ใช้แสดงได้ดังนี้
ตัวอย่าง | การทำงาน |
| $a == $b | เป็นจริงเมื่อ $a เท่ากับ $b |
| $a === $b | เป็นจริงเมื่อ $a เท่ากับ $b และเป็นข้อมูลชนิดเดียวกัน (PHP 4) |
| $a != $b | เป็นจริงเมื่อ $a ไม่เท่ากับ $b |
| $a < $b | เป็นจริงเมื่อ $a น้อยกว่า$b |
| $a > $b | เป็นจริงเมื่อ $a มากกว่า$b |
| $a <= $b | เป็นจริงเมื่อ $a น้อยกว่าเท่ากับ$b |
| $a >= $b | เป็นจริงเมื่อ $a มากกว่าเท่ากับ $b |
อย่างไรก็ตาม PHP ยังสนับสนุนการทำงานแบบ Conditional Operator เช่นเดียวกันกับภาษา C กล่าวคือ หากเขียนว่า $a = ($b==$c)? "เท่ากัน" : "ไม่เท่ากัน"; แล้ว จะทำให้ $a มีค่าเป็น "เท่ากัน" เมื่อ $b มีค่าเท่ากับ $c และ มีค่าเป็น "ไม่เท่ากัน" ถ้า $b ไม่เท่ากับ $c เป็นต้น
การกระทำทาง bitwise ของ PHP จะประกอบด้วยเครื่องหมายหลักพื้นฐานคือ And , Or , Exclusive-Or, Not, Shift Left และ Shift right ดังจะแสดงได้ตามตารางต่อไปนี้
ตัวอย่าง | การทำงาน |
| $a & $b | $a and $b |
| $a | $b | $a or $b |
| $a ^ $b | $a xor $b |
| ~$a | not $a |
| $a << $b | Shift $a left $b ครั้ง |
| $a >> $b | Shift $a right $b ครั้ง |
ตัวอย่างการใช้งาน Bitwise Operator เช่น
| <? $a = 0x0a; $b = 0x28; $c = $a & $b; // $c จะมีค่าเป็น 0x08 $d = 8; $d = $d << 2; // $d จะมีค่าเป็น 32 ?> |
ผู้เขียนโปรแกรมโดยทั่วไปมักจะสับสนระหว่าง Logical Operation และ bitwise Operation อย่างไรก็ตามเพื่อไม่ให้เกิดความสับสน ผู้เขียนมีข้อแนะนำในการจำคือ Logical Operation จะให้ผลลัพธ์เป็น จริงหรือเท็จเท่านั้น ส่วน bitwise Operation จะให้ผลลัพธ์เป็น Binary ส่วนการเปรียบเทียบค่าแบบ Logical บน PHP จะใช้สัญลักษณ์ดังต่อไปนี้
ตัวอย่าง | การทำงาน |
| $a and $b หรือ $a && $b | เป็นจริงถ้า $a และ $b เป็นจริง |
| $a or $b หรือ $a || $b | เป็นจริงถ้า $a หรือ $b เป็นจริง |
| $a xor $b | เป็นจริงถ้า $a และ $b อันใดอันหนึ่งเป็นจริงเท่านั้น |
| ! $a | เป็นจริงถ้า $a เป็นเท็จ |
ตัวอย่างการใช้งานเช่น
| <? $a = 5; $b = 10; $c = (($a=$b) and ($a !=0)) ? "เท่ากับ":"ไม่เท่ากัน หรือเป็น 0"; ?> |
ตัวปฏิบัติการที่ใช้ได้กับตัวอักษรมีเพียงตัวเดียวเท่านั้นคือ concatinate ซึ่งเป็นการนำเอาตัวอักษรมาต่อกัน โดยใช้สัญลักษณะแทนคือ จุด“.” ดังจะแสดงได้ตามตัวอย่างต่อไปนี้
| <? $a = "Hello"; $name = "krerk"; echo $a . " , " . $name; ?> |
ภาษา PHP มีโครงสร้างที่รองรับความผิดพลาดที่อาจจะเกิดขึ้นได้จากการประมวลผลคำสั่งต่างๆ คือ ”@” ซึ่งจะทำให้ Program ไม่แสดงค่า Error ของระบบออกมาเมื่อมีการประมวลผล ช่วยให้ผู้ใช้สามารถจัดการกับ Error ที่อาจจะเกิดขึ้นได้ ดังตัวอย่างต่อไปนี้
| <? $conn = @mysql_connect() or die ("Database connection Fail"); // โปรแกรมจะไม่แสดง ERROR ที่เกิดจากการประมวลผลคำสั่ง // mysql_connect ?> |
นอกจากนี้ PHP ยังสนับสนุนการนำผลลัพธ์จากโปรแกรมภายนอกอื่นๆ มาใช้งานต่ออีก เช่น หากผู้ใช้ต้องการนำผลลัพธ์จากคำสั่ง ls บน Unix มาใช้งาน สามารถทำได้โดยเขียนคำสั่งดังกล่าวใน backquote เช่นเดียวกันกับ Shell Script หรือ Perl ดังตัวอย่างต่อไปนี้
| <? $list = `ls`; // จะได้ผลลัพธ์จากการทำงานคำสั่ง ls เก็บอยู่ใน $list echo "<pre> $list </pre>"; ?> |
รายละเอียดเพิ่มเติมให้ดูจาก system(), passthru(), exec(), popen(), and escapeshellcmd().