> 백엔드 개발 > PHP 튜토리얼 > PHP 객체 지향 클래스 및 인스턴스화된 객체

PHP 객체 지향 클래스 및 인스턴스화된 객체

不言
풀어 주다: 2023-03-29 22:00:01
원래의
1897명이 탐색했습니다.

이 글은 주로 PHP 객체 지향 및 인스턴스화 객체를 소개하는데, 이는 특정 참조 값을 가지고 있습니다. 이제 모든 사람과 공유합니다. 도움이 필요한 친구들은 이를 참조할 수 있습니다

Class

Statement

[修饰符] class 类名
{
    [属性]
    [方法]
}
로그인 후 복사

참고:

1) 클래스 이름은 대문자大写开头的驼峰命名规范

2)花括号的开始、结束标记,须自成一行.

修饰符

private     私有

protected   保护

public      公共    

var         被视为public  (不建议使用)
로그인 후 복사

访问权限

PHP 객체 지향 클래스 및 인스턴스화된 객체

实例化

使用new关键字,实例化。

括号可不加。

例子

// 1.声明类
class Dog
{
    // 2.定义属性
    public $name = '旺财';
    public $sex = null;


    // 3.定义方法
    public function bark()
    {
        echo '汪汪~';
    }
}

// 4.实例化
$d1 = new Dog();
로그인 후 복사

实例化对象

属性、方法的调用

使用 ->,来访问非静态属性 | 方法。

例子

// 声明类
class Dog
{
    // 定义属性
    public $name = '旺财';
    public $sex = null;


    // 定义方法
    public function bark()
    {
        echo '汪汪~';
    }
}

// 实例化
$d1 = new Dog();

// 使用属性和方法
echo $d1 -> name;
echo &#39;<br/>&#39;;
echo $d1 -> bark();
로그인 후 복사

内部调用

方法在类定义的内部被调用时,可以使用伪变量$this

$this,就代表着正在使用的对象。

例子:

// 声明类
class Dog
{
    // 定义属性
    public $name = &#39;旺财&#39;;
    public $sex = null;

    public function intruduce()
    {
        echo &#39;我的名字是&#39;.$this->name;
    }
}
로그인 후 복사

传递赋值

1)简单类型时,传递赋值的双方,相互独立

2)复合类型时,传递赋值存的都是对象的标识符,所以变化一致

2)로 시작하는 카멜 표기법 명명 사양을 따릅니다. 2) 중괄호의 여는 태그와 닫는 태그는 단독으로 한 줄에 있어야 합니다.Modifiers

$a = &#39;abc&#39;;

// 传递赋值
$b = $a;

// 更改a的值
$a = &#39;qq&#39;;

var_dump($a);   // qq
var_dump($b);   // abc
로그인 후 복사

액세스 권한 여기에 그림 설명 쓰기

인스턴스화

새 키워드를 사용하여 인스턴스화하세요.

괄호는 필요하지 않습니다.

class MyClass
{
    public $str = &#39;abc&#39;;
}

// $a 存的是对象的标识符
$a = new MyClass();

// 传递赋值  相当于把标识符赋值给了$b
$b = $a;

var_dump($a);    // abc
var_dump($b);    // abc

// 更改a对象str属性的值
$a -> str =&#39;111&#39;;

// $a和$b存的都是标识符
var_dump($a);    // 111
var_dump($b);    // 111


// 更改a本身的值
$a = 123;

var_dump($a);    // 123
var_dump($b);    // 111   对象标识符
로그인 후 복사

인스턴스화된 객체

속성 및 메서드 호출

비정적 속성 메서드에 액세스하려면 ->를 사용하세요. 🎜🎜🎜예🎜🎜
$a = &#39;abc&#39;;

// 引用赋值
$c = &$a;

var_dump($a);   // qq
var_dump($c);   // qq
로그인 후 복사
🎜내부 호출🎜🎜클래스 정의 내에서 메서드가 호출될 때 의사 변수 $this를 사용할 수 있습니다. 🎜🎜$this는 사용되는 개체를 나타냅니다. 🎜🎜🎜예: 🎜🎜rrreee🎜전이 할당🎜🎜1) 🎜단순 유형🎜인 경우 전송 할당의 양쪽은 서로 독립적입니다. 🎜🎜2) 🎜복합 유형🎜인 경우 전송 할당은 🎜객체🎜의 식별자를 저장하므로 변경 사항이 일관됩니다. 🎜🎜🎜단순형의 예: 🎜🎜rrreee🎜🎜복합형의 예: 🎜🎜rrreee🎜참조 할당🎜🎜단순형이든 Conforming형이든 변화는 양쪽에서 일관됩니다. 🎜🎜🎜예: 🎜🎜rrreee🎜 관련 권장 사항: 🎜🎜🎜객체 지향 PHP의 기본 개념🎜🎜🎜

위 내용은 PHP 객체 지향 클래스 및 인스턴스화된 객체의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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