PHP-Fusion
v.7.01
AP-Fusion
v7.02.05
Pimped-Fusion-AP
v0.09.03
March 29 2024 08:52:28
Авторизация
Логин

Пароль



Вы не зарегистрированы?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Мини-чат
Вы должны авторизироваться, чтобы добавить сообщение.

lom
06/04/2018 14:03
Мы рады, ждем девятку. Очень хочется пощупать

Alipapa
27/03/2018 22:16
Всем привет, все неисправности устранили, всё у нас работает

mukaton
30/10/2015 02:37
Не получается ничего скачать. Ошибка Not Found

Alipapa
06/10/2015 23:00
9-я версия php-fusion на подходе, следите за новостями

Alipapa
10/11/2014 11:24
Заметь, я дважды ответил через 3 минуты после вопроса, могли бы уже решить

Последние статьи
· О стабилизаторах нап...
· СМС и Вебмани
· TinyMCE для пользова...
· PCRE (Perl Compatibl...
· PCRE (Perl Compatibl...
Последние активные темы форума
  Темы Просмотров Ответов Последние сообщения
PHP-Fusion 7 Bogatyr - бесп...
Моды, плагины
7103 1 Vveb--ws
08-10-2018 16:47
Php-Fusion v9. Первые впеча...
Вопросы по работе
4471 3 Vveb--ws
25-07-2018 13:46
Появился хэлп по PHP-Fusion...
Вопросы по работе
6710 7 Vveb--ws
25-07-2018 13:42
prestashop&ap-fusion
Вопросы по работе
17302 61 Alipapa
26-08-2014 10:29
Плагин магазина Ap-Shop
Моды, плагины
14530 70 Alipapa
18-08-2014 18:14
TinyMCE
Вопросы по работе
21052 55 Alipapa
27-07-2013 21:57
HTML-5
Моды, плагины
5416 1 Alipapa
15-06-2013 19:47
Мультиязычность в Pimped-Fu...
Ошибки, баги, глюки
6243 4 Papich
16-04-2013 12:39
Pimped-Fusion. Первые впеча...
Ошибки, баги, глюки
21613 127 Alipapa
18-12-2012 10:59
Ищу мод для расстановки код...
Моды, плагины
14965 55 Alipapa
17-09-2012 14:00
Как присоединить файл к лич...
Моды, плагины
8246 3 lom
27-05-2012 18:12
Что мне не нравится в после...
Вопросы по работе
6835 4 Alipapa
27-05-2012 18:08
Проблемы с добавлением кате...
Вопросы по работе
7715 5 Alipapa
27-05-2012 18:06

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

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().

Все функции PHP:
Навигация
· Новости
· Статьи
· Скачать
· Форум
· Ссылки
· Категории новостей
· Обратная связь
· Галерея
· Поиск
· CMS AP-Fusion. Отличия от PHP-Fusion
· Javascript справочник
· Техника
Сейчас на сайте
· Гостей: 1

· Пользователей: 0

· Всего пользователей: 453
· Новый пользователь: ZDA
Информеры
Загрузка файлов  +  -
9,910,809 уникальных посетителей Iceberg by Harly