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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





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