PHP 객체 지향 프로그래밍 소개: 클래스와 해당 멤버 함수를 정의하고 사용하는 방법
소개: 객체 지향 프로그래밍(줄여서 OOP)은 문제를 여러 객체로 나누고 클래스 간의 관계와 동작을 정의하는 프로그래밍 아이디어입니다. 객체는 코드의 모듈화와 재사용을 실현합니다. 널리 사용되는 웹 개발 언어인 PHP는 객체 지향 프로그래밍도 지원합니다. 이 기사에서는 PHP에서 클래스와 해당 멤버 함수를 정의하고 사용하는 방법을 소개합니다.
1. 클래스와 해당 멤버 함수 정의
PHP에서 클래스는 class라는 키워드로 정의됩니다. 클래스는 동일한 속성과 동작을 가진 객체 클래스를 설명하는 데 사용되는 객체의 추상화입니다. 다음은 간단한 클래스 정의 예입니다.
class Person { // 成员变量 public $name; private $age; // 构造函数 public function __construct($name, $age) { $this->name = $name; $this->age = $age; } // 成员函数 public function displayInfo() { echo "姓名:" . $this->name . "<br/>"; echo "年龄:" . $this->age . "<br/>"; } }
위 예에서는 Person이라는 클래스를 정의했습니다. 여기에는 두 개의 멤버 변수 $name 및 $age와 생성자 함수 __construct() 및 멤버 함수 displayInfo()가 포함되어 있습니다.
2. 객체 인스턴스화
PHP에서는 클래스를 사용하려면 먼저 클래스의 인스턴스(객체)를 만들어야 합니다. new 키워드와 클래스 이름을 사용하여 개체를 인스턴스화할 수 있습니다. 다음은 Person 클래스를 인스턴스화하는 예입니다.
$person = new Person("小明", 18);
위 예에서는 $person이라는 Person 개체를 만들고 이름과 나이를 생성자의 매개 변수로 전달합니다.
3. 멤버 함수 호출
PHP에서는 객체의 멤버 연산자 ->를 사용하여 객체의 멤버 변수와 멤버 함수에 액세스하고 호출할 수 있습니다. 다음은 Person 객체의 멤버 함수를 호출하는 예입니다.
$person->displayInfo();
위 예에서는 Person 객체 $person의 displayInfo() 함수를 호출하여 이름과 나이를 표시합니다.
4. 멤버 변수에 액세스
PHP에서는 멤버 연산자 ->를 통해 객체의 공개 멤버 변수에 액세스할 수 있습니다. 하지만 멤버 변수가 private으로 선언되면 직접 접근할 수 없습니다. 비공개 멤버 변수에 간접적으로 액세스하려면 접근자(getter) 및 설정자(setter) 메서드를 사용할 수 있습니다. 다음은 접근자와 설정자를 사용하여 전용 멤버 변수에 액세스하는 예입니다.
class Person { // ... // 获取姓名 public function getName() { return $this->name; } // 设置年龄 public function setAge($age) { if ($age >= 0) { $this->age = $age; } } // ... } $person = new Person("小明", 18); echo "姓名:" . $person->getName() . "
"; $person->setAge(20); echo "年龄:" . $person->getAge() . "
";
위의 예에서는 getName() 함수를 통해 전용 멤버 변수 $name의 값을 가져오고 setAge(를 통해 전용 멤버 변수를 설정합니다. ) 함수 멤버 변수 $age의 값입니다.
5. 요약
이 글에서는 PHP에서 클래스와 해당 멤버 함수를 정의하고 사용하는 기본 지식을 소개합니다. 클래스를 정의하고, 객체를 인스턴스화하고, 멤버 함수를 호출하고, 멤버 변수에 액세스함으로써 객체 지향 프로그래밍을 유연하게 사용할 수 있습니다. 이 기사가 PHP의 객체 지향 프로그래밍을 처음 접하는 독자들에게 도움이 되기를 바랍니다.
위 내용은 PHP 객체 지향 프로그래밍 소개: 클래스와 해당 멤버 함수를 정의하고 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!