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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





Руководство по 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