โอเปอเรเตอร์

Operator หรือ ตัวดำเนินการใน PHP จะเหมือนกับ C/C++ คือมี บวก ลบ คูณ หาร หารเอาเศษ เพิ่มขึ้นหนึ่ง และลดลงหนึ่ง

    <?php

    echo 2 + 3;
    // print: 5
    echo 6 - 2;
    // print: 4
    echo 2 * 6
    // print: 12
    echo 18 / 4
    // print: 4.5 (float)
    echo 18 % 4
    // print: 2

    $x = 8;
    echo $x++;
    // print: 8 (yes! 8);
    echo $x;
    // print: 9 (increase after run that line)
    echo $x--;
    // print: 9
    echo $x;
    //print: 8

    // but
    echo ++$x;
    // print: 9 (increase before echo out)
    echo $x;
    // print: 9
    echo --$x;
    // print: 8

ควรระวังการใช้ เพิ่มขึ้นหนึ่ง (++) และลดลงหนึ่ง (--) ร่วมกับคำสั่งอย่างอื่นตรงนี้ด้วย แต่ถ้าสั่งเดี่ยว ๆ บรรทัดเดียวของมันเองก็ไม่ใช่ปัญหา จะแบบไหนก็ไม่ต่างกัน


การกำหนดค่า นอกจากจะใช้เครื่องหมาย = อย่างเดียวก็ใช้ร่วมกับ operator บวก ลบ คูณ หาร หารเอาเศษ ได้ด้วย หากเป็นการกระทำกับตัวมันเองและค่า หรือตัวแปรอื่น ๆ

    <?php

    $x = 5;
    echo $x += 3;
    // == $x = $x + 3; print: 8
    echo $x -= 2;
    // print: 6
    echo $x *= 4;
    // print: 24;
    echo $x /= 3;
    // print: 8
    echo $x %= 5;
    // print: 3

ส่วนการเชื่อมต่อข้อความนั้น (string) จะใช้ . ในการเชื่อมข้อความเข้าด้วยกัน แต่ถ้าใช้ร่วมกับตัวแปรชนิดอื่นอย่าง boolean หรือ int ก็จะถูกแปลงมาให้เป็น string ก่อนที่จะเชื่อมต่อกับข้อความ

    <?php

    echo "Hello, " . "Tutor0x!";
    // print: Hello, Tutor0x
    echo "Life: " . 10;
    // print: Life: 10
    echo "This story is " . true;
    // print: This story is 1; (cast to int, then cast to string)
    echo 10 . "10";
    // print: 1010
    echo 10 + "10";
    // print: 20 (cast "10" to int (note: arithmetic operator), then calculate 10+10)
blog comments powered by Disqus