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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





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