Как вызвать функцию php
Перейти к содержимому

Как вызвать функцию php

Как вызвать функцию PHP

Пусть у нас есть функция func , которая возвращает какой-то текст:

Для того, чтобы вызвать нашу функцию, необходимо написать ее имя и круглые скобки, вот так: func . Результат работы функции мы можем вывести на экран, а можем записать в переменную и потом что-то с ним сделать.

Давайте для примера выведем результат работы нашей функции на экран:

echo func(); // выведет ‘text’ ?>

А теперь давайте запишем результат работы функции в переменную:

Пусть у нас теперь есть функция, которая параметром принимает число, а возвращает квадрат этого числа:

Найдем с помощью этой функции квадрат числа 3 :

echo square(3); // выведет 9 ?>

Давайте теперь не будем выводить квадрат тройки на экран, а вначале запишем его в переменную, затем прибавим к этой переменной число 1 и выведем результат на экран:

PHP: Определение и вызов функции

Функция — это именованный блок кода, в данном случае на языке PHP, который определяется один раз, а затем может вызываться на исполнение сколько угодно раз.

Определение функции выполняется с помощью ключевого слова function за которым указываются следующие компоненты:

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

Синтаксис определения функции выглядит следующим образом:

function имя_функции([параметры])

Квадратные скобки ( [] ) означают необязательность. Теперь приведем простой пример определения функции:

Для вызова функции используется оператор вызова, представляющий из себя пару круглых скобок. Завершается вызов функции как и все инструкции точкой с запятой ( ; ):

 // вызов функции hello(); ?>

При вызове функции исполняются инструкции, расположенные в ее теле.

Функции допускается определять в любом месте программы, это значит, что они не обязательно быть определены до их использования, исключая тот случай, когда функции определяются условно:

 > /* Теперь мы можем вызывать функцию foo(), поскольку $makefoo была интерпретирована как true */ foo(); function bar() < echo "Я существую сразу с начала старта программы.\n"; >?>

Все функции в PHP имеют глобальную область видимости — они могут быть вызваны вне функции, даже если были определены внутри и наоборот:

 > /* пока нельзя вызвать func2(), поскольку она еще не определена. */ func1(); /* Теперь можно вызвать функцию func2(), вызов func1() сделал ее доступной. */ func2(); ?>

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

С этой темой смотрят:

  • Параметры и аргументы функции
  • Анонимные функции
  • Литералы, идентификаторы и инструкции
  • Переменные
  • Область видимости

Копирование материалов с данного сайта возможно только с разрешения администрации сайта
и при указании прямой активной ссылки на источник.
2011 – 2023 © puzzleweb.ru | razumnikum.ru

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

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

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

Пример #1 Работа с функциями посредством переменных

function bar ( $arg = » )
echo «In bar(); argument was ‘ $arg ‘.
\n» ;
>

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

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

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

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

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

Пример #2 Обращение к методам класса посредством переменных

class Foo
function Variable ()
$name = ‘Bar’ ;
$this -> $name (); // Вызываем метод Bar()
>

function Bar ()
echo «This is Bar» ;
>
>

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

При вызове статических методов, вызов функции «сильнее» чем оператор доступа к статическому свойству:

Пример #3 Пример вызова переменного метода со статическим свойством

class Foo
static $variable = ‘static property’ ;
static function Variable ()
echo ‘Method Variable called’ ;
>
>

echo Foo :: $variable ; // Это выведет ‘static property’. Переменная $variable будет разрешена в нужной области видимости.
$variable = «Variable» ;
Foo :: $variable (); // Это вызовет $foo->Variable(), прочитав $variable из этой области видимости.

С версии PHP 5.4.0, можно вызывать callable функцию помещенную в переменную.

Пример #4 Сallable-фукнции

class Foo
static function bar()
echo «bar\n»;
>
function baz()
echo «baz\n»;
>
>

$func = array(«Foo», «bar»);
$func(); // prints «bar»
$f = array(new Foo, «baz»);
$func(); // prints «baz»
$f = «Foo::bar»;
$func(); // выведет «bar» в PHP 7.0.0 и выше; в предыдущих версиях это приведет к фатальной ошибке

Список изменений

Версия Описание
7.0.0 ‘ClassName::methodName’ доступна как функция-переменная.
5.4.0 Массивы, являющиеся корректными callable-методами, доступны как функции-переменные.

PHP — Функции

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

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

Создание функции PHP

Вызов функции PHP

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

Создание функции PHP

Собственную PHP-функцию создать очень просто. Предположим, вы хотите создать функцию PHP, которая просто выводит в браузере короткое сообщение, когда вы ее вызываете. В следующем примере мы создаем функцию writeMessage(), а затем вызывает ее сразу после создания.

Обратите внимание, что при создании функции ее имя должно начинаться с ключевого слова function, и весь код PHP должен быть помещен внутри скобок < >, как в приведенном ниже примере:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *