Intereting Posts
Не могу заставить Guzzle работать в моем приложении Laravel на Bluemix Определите, подключен ли посетитель к SSL на CloudFlare Pro Как я могу использовать различные XML-библиотеки PHP для получения DOM-подобных функций и предотвращения уязвимостей DoS, таких как Billion Laughs или Quadratic Blowup? Страница смешанного контента: запрошена небезопасная ошибка стилей Производительность MySQL node.js Получить изображения в каталоге и подкаталоге с помощью Glob PHP – Проблемы с удалением «\ r \ n \ r \ n» из этой строки: «Я хотел бы: \ r \ n \ r \ n1.) Сбросить этот беспорядок \ r \ n \ r \ n \ 2.) Теперь Пожалуйста" Подтвердить вход с помощью пароля Bcrypt Ошибка при перезаписи bindParam в PHP Как проверить, успешно ли почта mail () отправила почту jQuery Connected Sortable Lists, Save Order to MySQL доступный для пользователя размер файла Как выбрать уникальное значение из столбца на основе нескольких идентификаторов во многих случаях? Теги шаблона Lite Ограничение типа загрузки файлов

Что такое пример объекта Value в PHP?

Я прочитал много примеров C # объектов Value, и я понимаю, что это «объект», который идентифицируется его значениями. Если значение изменяется, объект является «новым».

Однако это не имеет смысла, когда дело доходит до PHP … либо это, либо я просто не подключаюсь.

Является ли объект Value только строкой?

Чтобы помещать это в контекст, во многих языках OO объекты сравниваются по их идентичности . В псевдокоде:

bar = new Foo baz = new Foo bar == baz // false 

Хотя оба объекта в основном одинаковы, если вы просто смотрите на их значения , они не считаются идентичными, потому что они являются отдельными экземплярами. Демонстрировать:

 bar = new Foo baz = bar bar == baz // true 

Теперь:

В информатике объект ценности – это небольшой простой объект, например деньги или диапазон дат, чье равенство не основано на идентичности.

http://en.wikipedia.org/wiki/Value_object

Это будет демонстрация «объектов ценности»:

 address1 = new Address('Main street 42') address2 = new Address('Main street 42') address1 == address2 // true 

Поскольку значения одинаковы, оба объекта считаются равными, даже если они являются отдельными экземплярами.

У PHP нет отдельной концепции «объектов ценности», у нее есть только один тип объекта. Его оператор сравнения может сделать это различие:

При использовании оператора сравнения (==) переменные объекта сравниваются простым образом, а именно: два экземпляра объекта равны, если они имеют одинаковые атрибуты и значения и являются экземплярами одного и того же класса.

http://www.php.net/manual/en/language.oop5.object-comparison.php

Например:

 $address1 = new Address('Main street 42'); $address2 = new Address('Main street 42'); $address1 == $address2; // true equal... $address1 === $address2; // false ...but not identical 

PHP имел обыкновение иметь объекты ценности, но это было в PHP4. См. http://3v4l.org/ghI8G