Интерфейслар ва instanceof ДОПда PHPда
instanceof ёрдамида бирор класс берилган интерфейсни
амалга ошираётганини ёки амалга оширмаётганини
текшириш мумкин. Мисолда кўрамиз. Бизда бу класс бор деб фараз қилайлик:
<?php
class Quadrate implements iFigure
{
}
?>
Бу класснинг объектини яратамиз ва уни
instanceof оператори билан текширамиз:
<?php
$quadrate = new Quadrate;
var_dump($quadrate instanceof Quadrate); // true чиқади
var_dump($quadrate instanceof Figure); // true чиқади
?>
getVolume методи ва getSurfaceSquare методи
бўлган Figure3d интерфейсини яратинг.
Figure3d интерфейсини амалга оширадиган
Cube классни яратинг.
Quadrate класснинг бир нечта объектини,
Rectangle класснинг бир нечта объектини
ва Cube класснинг бир нечта объектини яратинг.
Уларни $arr массивига тасодифий тартибда
киритинг.
$arr массивини цикл билан айлантириб чикинг ва
экранга фақат iFigure интерфейсини амалга ошираётган
объектларнинг юзаларини чикаринг.
$arr массивини цикл билан айлантириб чикинг ва
текис фигуралар учун уларнинг юзаларини, ҳажмли фигуралар
учун эса уларнинг сирт юзаларини чикаринг.