Вкладені функції

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

Функції можна викликати всередині інших функцій - за аналогією з тим, як одна керуюча конструкція (if, while, for і т.д.) може знаходитися всередині іншої. Така можливість зручна в будь-яких програмах, і у великих, і в малих, оскільки вона збільшує ступінь модульності програми і спрощує супровід програми.

Також допускається оголошення функцій всередині інших функцій. Тим не менше, вкладене оголошення ще не робить функцію «захищеною», тобто не обмежує можливість її виклику тієї функцією, в якій вона була оголошена. Більш того, вкладена функція не буде наслідувати параметрів батьківського функції; параметри повинні передаватися їй точно так само, як і будь-який іншої функції. Втім, вкладені оголошення функцій все одно можуть використовуватися з міркувань зручності супроводу і наочності. Приклад
function display_footer($site_name) {

function display_copyright($site_name) {

print "Copyright &сору". date("Y").

$site_name. All Rights Reserved.";

print "<сenter>

<a href = \"\">home</a> | <a href = \"\">recipes</a> | <a href = \"\">events</a>

<a href = \"\">tutorials</a> | <a href = \"\">about</a> I <a href = \"\">contact us</a>
";

display_copyright($site_name);

print "</center>";

}

$site_name = "PHP Recipes":

display_footer($site_name);

display_copyhght($site_name);