Прототип — порождающий шаблон проектирования. Он используется для клонирования существующего объекта, вместо его инстанцирования с помощью new
. Нам повезло, что в PHP уже есть всё необходимое для Prototype — это языковая конструкция clone
, которая позволяет упростить реализацию праттерна до одной строчки.
Вообще может возникнуть вопрос, зачем вообще нужно клонирование, разве недостаточно обычного присваивания через равно «=»? Покажу на практическом примере.