ホームページ  >  記事  >  バックエンド開発  >  PHPでオブジェクトデータ型を使用する方法

PHPでオブジェクトデータ型を使用する方法

王林
王林オリジナル
2023-07-15 11:30:031437ブラウズ

PHP でオブジェクト データ型を使用する方法

PHP では、オブジェクトは、実世界のエンティティまたは抽象的な概念を表すために使用できる特別なデータ型です。オブジェクトは、オブジェクトが持つプロパティとメソッドを定義するクラスを通じて作成されます。この記事では、PHP でオブジェクト データ型を使用する方法を学び、コード例を通して理解を深めます。

クラスの作成
PHP では、class キーワードを使用してクラスを作成できます。クラスには複数のプロパティとメソッドを含めることができます。以下に簡単な例を示します。

class Person {
  public $name;
  public $age;
  
  public function sayHello() {
    echo "Hello, my name is " . $this->name . ".";
    echo " I am " . $this->age . " years old.";
  }
}

この例では、2 つのパブリック プロパティ $name と $age とパブリック メソッドsayHello を持つ Person という名前のクラスを作成します。プロパティはオブジェクトの状態を保存するために使用でき、メソッドはオブジェクトの動作を定義するために使用されます。

オブジェクトの作成
オブジェクトを作成するには、new キーワードの後に​​クラス名を使用する必要があります。パラメーターはかっこを使用して渡すことができます。以下は、Person オブジェクトの作成例です。

$person = new Person();

オブジェクトを作成した後、arrow-> 構文を使用して、オブジェクトのプロパティとメソッドにアクセスできます。たとえば、$name 属性と $age 属性に値を割り当てて、sayHello メソッドを呼び出すことができます:

$person->name = "John";
$person->age = 30;
$person->sayHello(); // 输出:Hello, my name is John. I am 30 years old.

Inheritance
PHP はクラスの継承をサポートしています。継承を通じて、次のような新しいクラスを作成できます。から派生した既存のクラスはプロパティとメソッドを継承し、独自のプロパティとメソッドを追加できます。たとえば、Personal クラスを継承する Student クラスを作成できます。

class Student extends Person {
  public $grade;
  
  public function sayGrade() {
    echo "I am in grade " . $this->grade . ".";
  }
}

この例では、Student クラスは Person クラスのすべてのプロパティとメソッドを継承し、新しいプロパティ $grade と新しいメソッドsayGrade。

Student オブジェクトを作成し、そのメソッドを呼び出します:

$student = new Student();
$student->name = "Jane";
$student->age = 18;
$student->grade = 12;

$student->sayHello(); // 输出:Hello, my name is Jane. I am 18 years old.
$student->sayGrade(); // 输出:I am in grade 12.

カプセル化とアクセス制御
PHP のカプセル化は、オブジェクトのプロパティとメソッドを保護するメカニズムです。アクセス制御修飾子を使用して制限できます。プロパティとメソッドへのアクセス。 public、protected、private の 3 つのアクセス制御修飾子が使用可能です。

  • public: パブリック アクセス権、プロパティ、およびメソッドには、クラスの内部と外部からアクセスできます。
  • protected: 保護されたアクセス、プロパティ、およびメソッドには、クラス内およびサブクラス内でアクセスできます。
  • private: プライベート アクセス権、プロパティ、およびメソッドにはクラス内でのみアクセスできます。

次は、アクセス制御の使用例です:

class Car {
  public $brand;
  protected $price;
  private $mileage;
  
  public function __construct($brand, $price, $mileage) {
    $this->brand = $brand;
    $this->price = $price;
    $this->mileage = $mileage;
  }
  
  public function displayInformation() {
    echo "Brand: " . $this->brand . "<br>";
    echo "Price: " . $this->price . "<br>";
    echo "Mileage: " . $this->mileage . "<br>";
  }
  
  protected function calculateValue() {
    return $this->price - $this->mileage;
  }
  
  private function getMileage() {
    return $this->mileage;
  }
}

$car = new Car("Toyota", 20000, 50000);

$car->displayInformation(); // 输出:Brand: Toyota   Price: 20000   Mileage: 50000
echo $car->brand; // 输出:Toyota

// 以下行代码会报错,因为$price和$mileage属性具有受保护和私有访问权限,无法在类外部访问:
//echo $car->price;
//echo $car->mileage;

// 以下行代码会报错,因为calculateValue和getMileage方法具有受保护和私有访问权限,无法在类外部访问:
//echo $car->calculateValue();
//echo $car->getMileage();

この例では、パブリック属性ブランド、保護属性価格、およびプライベート資産の走行距離を持つ Car クラスを作成します。 、パブリック メソッドdisplayInformation、プロテクト メソッドcalculateValue、プライベート メソッドgetMileageです。

概要
この記事では、PHP でオブジェクト データ型を使用する方法を学びました。クラスを作成し、オブジェクトを作成し、矢印構文を使用してオブジェクトのプロパティとメソッドにアクセスする方法を学びました。また、クラスの継承、カプセル化、アクセス制御の概念も学び、サンプルコードを使って実践しました。オブジェクト データ型を理解し、上手に使用することで、PHP のオブジェクト指向プログラミング機能をより適切に活用して、複雑なアプリケーションを設計および開発できます。

以上がPHPでオブジェクトデータ型を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。