PHP ยังได้สนับสนุนการเขียนโปรแกรมเชิงวัตถุ object-oriented programming (OOP) ซึ่งประโยชน์อย่างเห็นได้ชัดของการเขียนโปรแกรมเชิงวัตถุก็คือคุณสมบัติ reuse โดยใน PHP5 นั้นได้ปรับปรุง OOP ให้มีความครอบคลุมมากขึ้น
Class ต่าง ๆ จะประกอบไปด้วยโครงสร้างต่าง ๆ เช่น properties (หรือ variable) และ method (หรือ function) ซึ่งในการสร้าง class นั้น ๆ จะใช้ keyword "class"
<?php
class Person {
public $name = '';
function name ($newname = NULL) {
if (!$is_null($newname)) {
$this->name = $newname;
}
return $this->name;
}
}
?>
เมื่อเราสร้างคลาสเรียบร้อยแล้ว เราก็สามารถสร้าง object ของคลาสได้โดยใช้ keyword "new" โดยที่อ็อบเจ็คนั้น ๆ สามารถเรียกใช้ properties และ method ต่าง ๆ ได้โดยใช้ "->" เช่น
<?php
$gt = new Person;
$gt->name("Genetic");
printf("Hello, %s\n", $ps->name);
$jn = new Person;
$jn->name("John");
printf("Look out below %s\n", $jn->name);
?>
# ผลลัพธ์ Hello, Genetic Look out below John
ในการตรวจสอบว่าตัวแปรนั้น ๆ เป็นชนิด object หรือไม่นั้น สามารถตรวจสอบโดยใช้ฟังก์ชัน is_object() ดังนี้
<?php
$ps = new Person;
if (is_object($ps)) {
echo '$ps เป็นตัวแปรชนิด object';
}
?>
ผู้สนับสนุน