Opereta instanceof na Urithi katika OOP katika PHP

Wacha tuchambue sifa za urithi wakati wa kutumia opereta instanceof. Hebu tuseme tuna darasa la mzazi na darasa la mtoto:

index.php<?php
  // Darasa la mzazi:
  class ParentClass
  {
    
  }
  
  // Darasa la mtoto:
  class ChildClass extends ParentClass
  {
    
  }
?>

Wacha tuunde kitu cha darasa la mtoto:

index.php<?php
  $obj = new ChildClass;
?>

Wacha tuangalie sasa kwa kutumia instanceof, kama kitu chetu ni cha darasa ParentClass na darasa ChildClass:

index.php<?php
  var_dump($obj instanceof ChildClass);  // itatoa true
  var_dump($obj instanceof ParentClass); // pia itatoa true
?>

Kama unavyoona kutoka kwa mfano - opereta instanceof hufanyi tofauti wakati wa ukaguzi kati ya madarasa ya mzazi na ya watoto.

Usichanganyikiwe - ikiwa kitu kitakuwa cha darasa la mzazi basi, bila shaka, ukaguzi wa kuwa mwanachama wa darasa la mtoto utarudisha false:

php<?php
  $obj = new ParentClass; // kitu cha darasa la mzazi
  
  var_dump($obj instanceof ParentClass); // itatoa true
  var_dump($obj instanceof ChildClass);  // itatoa false
?>
Задание 1

Fanya darasa User na sifa za umma name na surname.

Задание 2

Fanya darasa Employee, ambalo litakuwa linarithi kutoka kwa darasa User na kuongeza sifa salary.

Задание 3

Fanya darasa City na sifa za umma name na population.

Задание 4

Unda 3 vitu vya darasa User, 3 vitu vya darasa Employee, 3 vitu vya darasa City, na kwa mpangilio wa kiholela andika kwenye safu $arr.

Задание 5

Kagua kwa mzunguko safu $arr na uonyeshe kwenye skrini safu wima ya sifa name za vile vitu, ambavyo ni mwanachama wa darasa User au kizazi cha darasa hili.

Задание 6

Kagua kwa mzunguko safu $arr na uonyeshe kwenye skrini safu wima ya sifa name za vile vitu, ambavyo si mwanachama wa darasa User wala kizazi cha darasa hili.

Задание 7

Kagua kwa mzunguko safu $arr na uonyeshe kwenye skrini safu wima ya sifa name za vile vitu, ambavyo ni mwanachama wa darasa User hasa, yaani si darasa City wala darasa Employee.