> 백엔드 개발 > PHP 튜토리얼 > PHP 클래스의 선언 및 인스턴스화, 구성 방법 및 파괴 방법에 대한 자세한 설명_php 기술

PHP 클래스의 선언 및 인스턴스화, 구성 방법 및 파괴 방법에 대한 자세한 설명_php 기술

WBOY
풀어 주다: 2016-05-16 19:59:18
원래의
1330명이 탐색했습니다.

이 기사의 예에서는 PHP 클래스의 선언 및 인스턴스화는 물론 생성 방법 및 소멸자 방법에 대해 설명합니다. 참고하실 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.

<&#63;php
class human{
  public static $leg=2;
  public $name = 'leo';
  public $age = '25';
  public function cry(){
  }
}
$leo = new human();
print_r($leo);
/*返回
human Object ( [name] => leo [age] => 25 )
*/
//为什么没有leg呢?
//是因为加了static,就变成了类的属性了,是属于所有
//通过这个类实例实例后的对象的
//public是权限修饰符,权限修饰符有public,protected,private
//在PHP4经常用到var,这个现在不怎么也不推荐用,就相当于public
//在PHP5中会把var解析成public
&#63;>

로그인 후 복사

새 개체를 생성할 때 매개변수를 전달하여 개체의 속성을 변경할 수 있는 방법이 있나요? 똑같다기보다는

답변: 클래스에서 생성자 메서드를 정의할 수 있습니다. 즉, 개체가 초기화될 때 실행되고 매개변수를 받을 수 있습니다.

아래 그림과 같습니다.

<&#63;php 
class human{
  public static $leg=2;
  public $name = 'leo';
  public $age = '25';
  public function __construct($name,$age){
    $this->name=$name;
    $this->age=$age;
  }
}
$leo = new human('macro','23');
print_r($leo);
/*
返回
human Object ( [name] => macro [age] => 23 )
可以看到参数起作用了
__construct就是构造函数
*/
&#63;>

로그인 후 복사

생성자에 해당하는 것은 소멸자인데, 객체가 소멸될 때 실행됩니다

아래 그림과 같습니다.

<&#63;php 
class human{
  public static $leg=2;
  public $name = 'leo';
  public $age = '25';
  public function __construct($name,$age){
    $this->name=$name;
    $this->age=$age;
    echo $this->name."对象生成啦<br />";
  }
  public function __destruct(){
    echo $this->name."对象销毁啦<br />";
  }
}
$leo = new human('macro','23');
$tim = new human('tim','18');
unset($leo);
echo '~~~~~~~~~~~~~~~~~~~~<br />';
/*
返回:
macro对象生成啦
tim对象生成啦
macro对象销毁啦
~~~~~~~~~~~~~~~~~~~~
tim对象销毁啦
*/
//__destruct是析构函数,即对象销毁的时候调用
//为什么$tim 没有unset 也执行了析构函数
//这是一个隐式销毁,unset是显式销毁
//当一个页面执行完成自动销毁
&#63;>

로그인 후 복사

PHP 객체 지향 콘텐츠에 대해 더 많은 관심이 있는 독자는 이 사이트의 특별 주제인 "php 객체 지향 프로그래밍 입문 튜토리얼"

을 확인할 수 있습니다.

이 기사가 PHP 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿