CSS классы в классе Tag ООП на PHP

Пусть у нас дан вот такой инпут с атрибутом class:

<input class="eee bbb kkk">

Как вы видите, атрибут class содержит в себе несколько значений, разделенных пробелами. Эти значения представляют собой несколько CSS классов нашего элемента.

Давайте реализуем в нашем классе Tag набор методов, которые будут работать с этими CSS классами. Например, было бы удобно иметь метод addClass, добавляющий еще один класс в строку с классами.

При этом наш метод должен проверять то, что добавляемый класс еще не присутствует среди классов элемента, иначе добавление нового класса будет приводить к тому, что у элемента будет несколько одинаковых классов, что, конечно же, неправильно.

Пример использования желаемого нами метода:

<?php // Выведет <input class="eee bbb">: echo (new Tag('input'))->addClass('eee')->addClass('bbb')->open(); ?>

Было бы также удобно иметь метод removeClass для удаления заданного класса элемента.

Практическое применение этих методов вы еще увидите в следующих уроках.



Чат с GPT Компилятор