Методы в классе как обычные функции, могут быть рекурсивными, то есть позволяют многократно вызывать сами себя. Рассмотрим класс "myRecursion", который не содержит членов, а содержит единственный метод "method_myRecursion()".
Классы, не содержащие членов и включающие в себя только методы, часто используют как своеобразный контейнер - библиотеку. Это позволяет организовать некоторое подобие пространства имён и исключить конфликт между функциями имеющими одинаковые имена, но выполняющими разные действия.
Класс myRecursion:
class myRecursion {
public function method_myRecursion($_element) {
if (is_array($_element)) {
foreach ($_element as $_value) {
$this->method_myRecursion($_value);
}
} else {
echo '<div>'. $_element .'</div>';
}
}
}
$_Class_myRecursion = new myRecursion();
$_myArray = array('1' => array('A', 'B', 'C'),
'2' => array('D', 'E', 'F'),
'3' => array('G', 'H', 'I'));
$_Class_myRecursion->method_myRecursion($_myArray);
Результат:
A
B
C
D
E
F
G
H
I
Метод "method_myRecursion()" принимает единственный параметр. Если в качестве параметра ему передаётся массив, то для каждого его элемента метод вновь вызывает сам себя, если же параметр является обычной переменной, то он выводиться в окно браузера.
Спасибо. Наконец дошло.