суббота, 1 апреля 2017 г.

PHP ООП. Сравнение объектов

Можно использовать 2 оператора:
1) оператор сравнения ==
Сравнивается имеют ли два объекта одинаковые атрибуты, одинаковы ли они по сути.

2) более строгий оператор идентичности ===
Требует, чтобы 2 сравниваемых объекта ссылались на один и тот же объект.


<?php
// Оперетор сравнения ==
// Оператор идентичности ===

class Box {
public $name = "box";
}

$box = new Box();
$box_reference = $box; // присвоение по ссылки
$box_clone = clone $box;

$box_changed = clone $box;
$box_changed->name = "changed box";

$another_box = new Box();

// сравним
echo $box == $box_reference ? 'true' : 'false'; // true
echo "<br />";

echo $box == $box_clone ? 'true' : 'false'; // true
echo "<br />";

echo $box == $box_changed ? 'true' : 'false'; // false
echo "<br />";

echo $box == $another_box  ? 'true' : 'false'; // true
echo "<br /> <br />";
echo "<hr />";

// проверим на идентичность
echo $box === $box_reference ? 'true' : 'false'; // true, это ссылка, которая указывает на одну и ту же вещь
echo "<br />";

echo $box === $box_clone ? 'true' : 'false'; // false
echo "<br />";

echo $box === $box_changed ? 'true' : 'false'; // false
echo "<br />";

echo $box === $another_box  ? 'true' : 'false'; // false
echo "<br /> <br />";
?>

Комментариев нет:

Отправить комментарий

Materialize-css. Футер

Сделаем футер и прижмем к низу страницы. Документация: https://materializecss.com/footer.html