Intereting Posts
Что такое бит в условиях неспециалиста? Symfony3 как хранить роли пользователя в базе данных Получить идентификаторы заказа со статусом = «Завершить» в Magento Каковы пределы функций множественного завивания PHP? Не удалось получить символы с акцентом UTF-8 из Access через PDO_ODBC как вы обнаруживаете, пришел ли ваш посетитель сайта из результатов поиска Google? Код PHP внутри Контактная форма 7 Шаблон электронной почты Функция вызова Codeigniter в контроллере без index.php yii cgridview ajaxlink работает только на первой странице Создание простого, но гибкого шаблонного механизма Сортировка массива по дате в порядке убывания по дате в php Magento – получить все категории, содержащие продукты по брендам Как конвертировать между часовыми поясами в PHP с использованием класса DateTime? Как заставить Apache обслуживать index.php вместо index.html? Что означает? == оператор сравнения в PHP означает?

Рекурсивная функция: вызов самой функции php

Я просто хочу убедиться, что я делаю это правильно, и это не создаст каких-либо конфессий.

У меня есть функция, которая вызывает себя и нуждается в вашем одобрении, если это нормально или нет?

<?php function determine($the_array){ foreach ($the_array as $key => $value) { switch ($key) { case 'in': echo $value; break; case 'out': echo $value; break; case 'level': echo '<ul>'; determine($value); echo '</ul>'; break; } } } 

Это массив:

 $the_array = array( 'in' => '<li>Simple IN</li>', 'out' => '<li>Simple OUT</li>', 'level' => array( 'in' => '<li>Simple IN 2</li>', 'out' => '<li>Simple OUT 2</li>', 'level' => array( 'in' => '<li>Simple IN 3</li>', 'out' => '<li>Simple OUT 3</li>' ), ), ); 

И вот окончательный init:

 echo '<ul>'; determine($the_array); echo '</ul>'; 

Результат – это то, как я хотел быть, он отлично работает, но я не знаю, является ли это хорошей практикой.