П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 182409 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 81897 раз(а).

Учебник HTML.
Просмотров 76916 раз(а).

Руководство по PHP5.
Просмотров 47898 раз(а).

Хостинг через призму DNS.
Просмотров 55496 раз(а).

Подборка текстов стандартных документов.
Просмотров 47354 раз(а).

Учебник PHP - Самоучитель
Просмотров 53842 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 54560 раз(а).

Внешние атаки...
Просмотров 44146 раз(а).

Учебник PHP.
Просмотров 39479 раз(а).

SSI в примерах.
Просмотров 29336 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь





Руководство по PHP
Пред. Глава 17. Функции След.

Обращение к функциям через переменные

PHP поддерживает концепцию переменных функций. Это означает, что если к имени переменной присоединены круглые скобки, PHP ищет функцию с тем же именем, что и результат вычисления переменной, и пытается ее выполнить. Эту возможность можно использовать для реализации обратных вызовов, таблиц функций и множества других вещей.

Переменные функции не будут работать с такими языковыми конструкциями как echo(), print(), unset(), isset(), empty(), include(), require() и другими подобными им операторами. Вам необходимо реализовывать свою функцию-обертку (wrapper) для того, чтобы приведенные выше конструкции могли работать с переменными функциями.

Пример 17-13. Работа с функциями посредством переменных

<?php
function foo() {
    echo
"In foo()<br />\n";
}

function
bar($arg = '')
{
    echo
"In bar(); argument was '$arg'.<br />\n";
}

// Функция-обертка для echo
function echoit($string)
{
    echo
$string;
}

$func = 'foo';
$func();        // Вызывает функцию foo()

$func = 'bar';
$func('test');  // Вызывает функцию bar()

$func = 'echoit';
$func('test');  // Вызыывет функцию echoit()
?>

Вы также можете вызвать методы объекта, используя возможности PHP для работы с переменными функциями.

Пример 17-14. Обращение к методам класса посредством переменных

<?php
class Foo
{
    function
Variable()
    {
        
$name = 'Bar';
        
$this->$name(); // Вызываем метод Bar()
    
}
    
    function
Bar()
    {
        echo
"This is Bar";
    }
}

$foo = new Foo();
$funcname = "Variable";
$foo->$funcname();  // Обращаемся к $foo->Variable()

?>

Смотрите также call_user_func(), Переменные переменные и function_exists().


Пред. Начало След.
Возврат значений Уровень выше Встроенные функции


Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru