Перечислим особенности пользовательских функций в PHP:
1) Доступны параметры по умолчанию. Есть возможность вызывать одну и ту же функцию с переменным числом параметров;
2) Пользовательские функции могут возвращать любой тип;
3) Область видимости переменных внутри функции является иерархической (древовидной);
4) Есть возможность изменять переменные, переданные в качестве аргумента.
Пользовательская функция может быть объявлена в любой части программы (скрипта), до места ее первого использования. И не нужно никакого предварительного объявления. Дойдя до определения пользовательской функции, транслятор проверит корректность определения и выполнит трансляцию определения функции во внутреннее представление, но транслировать сам код он не будет. Синтаксис объявления функций следующий:
function Имя (аргумент1[=значение1],...,аргумент1[=значение1])
{
тело_функции
}
Объявление функции начинается служебным словом function, затем следует имя функции, после имени функции - список аргументов в скобках. Тело функции заключается в фигурные скобки и может содержать любое колличество операторов.
|
|
Требования, предъявляемые к именам функций:
1) Имена функций могут содержать русские буквы, но давать функциям имена, состоящие из русских букв не рекоммендуется;
2) Имена функций не должны содержать пробелов;
3) Имя каждой пользовательской функции должно быть уникальным. При этом, необходимо помнить, что регистр при объявлении функций и обращении к ним не учитывается. То есть, например, функции funct() и FUNCT() имеют одинаковые имена;
4) Функциям можно давать такие же имена, как и переменным, только без знака $ в начале имен.
Типы значений, возвращаемые пользовательскими функциями, могут быть любыми. Для передачи результата работы пользовательских функций в основную программу (скрипт) используется конструкция return. Если функция ничего не возвращает, конструкцию return не указывают. Конструкция return может возвращать все, что угодно, в том числе и массивы.
Встроенные функции php:
1) Функции по работе с переменными (is_array() - соответствует ли переменная типу массив, is_string() - соответствует ли переменная типу — строка, is_null() - соответствует ли значение переменной типу NULL)
2) Математические функции (max - наибольшее число из имеющихся, sqrt // квадратный корень их числа)
3) Функции для работы со строками (strip_tags — удаление HTML и PHP тэгов из строки, trim — удаляет пробелы из строки, как в начале, так и в конце, addslashes — экранирует слэшом специальные символы)
4) Функции для массивов (array_reverse — переворачивает массив. Возвращает элементы в обратно порядке, array_shift — возвращает первый элемент в исходном массиве, array_pop — извлечение последнего элемента в исходном массиве, count — знакомая нам функция, которая считает элементы в массиве)