|
ивный (см. ниже). То есть набор пар
ключ=>значение. Впрочем, здесь может быть передан и список list.
Часть III. Основы языка PHP 128
list
Обычно это массив с целыми ключами, пронумерованными от 0 и следующими под-
ряд. Так как список является разновидностью ассоциативного массива, то обычно
вместо параметров функций типа list можно подставлять и параметры типа array.
При этом, скорее всего, функция "ничего не заметит" и будет работать с этим
масси-
вом как со списком, "мысленно" пронумеровав его элементы. Можно также сказать,
что список представляет собой упорядоченный набор значений (который можно, на-
пример, отсортировать в порядке возрастания), тогда как ассоциативный массив —
упорядоченный набор пар значений, каждую из которых логически бессмысленно
разъединять.
object
Объект какой-то структуры. Обычно эта структура будет уточняться.
void
Пожалуй, самый простой тип, который применяется только для определения возвра-
щаемого функцией значения, я бы его охарактеризовал так: "Не возвращает ничего
ценного". В PHP функция не может ничего не возвращать (так уж он устроен),
поэто-
му практически все void-функции возвращают false (то есть пустую строку).
mixed
Все, что угодно. Это может быть целое или дробное число, строка, массив или
объ-
ект... Например, параметр типа mixed имеет стандартная функция gettype() или
функция settype(). Если написано, что функция возвращает mixed, это значит, что
тип результата зависит от операндов и уточняется при описании функции.
При написании функций ни в коем случае не набирайте эти имена типов! Они нуж-
ны только для того, чтобы уточнить синтаксис какой-то функции. Хотя, возможно,
в
будущих версиях эти типы все же можно будет указывать явно. Что ж, посмотрим...
Константы
Встречаются случаи, когда переменные довольно неудобно использовать для посто-
янного хранения каких-либо определенных величин, которые не меняются в течение
работы программы. Такими величинами могут быть математические константы, пути
к файлам, разнообразные пароли и т. д. Как раз для этих целей в PHP
предусмотрена
такая конструкция, как константа.
Глава 7. Переменные, константы, выражения 129
Константа отличается от переменной тем, что, во-первых, ей нигде в программе
нель-
зя присвоить значение больше одного раза, а во-вторых, ее имя не предваряется
зна-
ком $, как это делается для переменных. Например:
// Предположим, определена константа PI, равная 3.146
$a=2.34*sin(3*PI/8)+5; // использование константы
echo "Это число PI"; // выведет "Это число PI"
echo "Это число ".PI; // выведет "Это число 3.14"
То, что не надо писать "доллар" перед именем константы — это, конечно хорошо.
Однако, как мы можем видеть из примера, есть и минусы: мы уже не можем исполь-
зовать имя константы непосредственно в текстовой строке.
Предопределенные константы
Константы бывают двух типов: одни — предопределенные (то есть устанавливаемые
самим интерпретатором), а другие определяются программистом. Существуют не-
сколько предопределенных констант.
r __FILE__
Хранит имя файла программы, которая выполняется в данный момент.
r __LINE__
Содержит текущий номер строки, которую обрабатывает в текущий момент ин-
терпретатор. Эта своеобразная "константа" каждый раз меняется по ходу исполне-
ния программы.
r PHP_VERSION
Версия интерпретатора PHP.
r PHP_OS
Имя операционной системы, под которой работает PHP.
r TRUE или true
Эта константа нам уже знакома и содержит значение "истина".
r FALSE или false
Содержит значение "ложь".
Определение констант
Вы можете определить и свои собственные, новые константы. Делается это при по-
мощи оператора define(), очень похожего на функцию. Вот как она выглядит (за-
одно мы попрактикуемся в наших условных обозначениях для описания синтаксиса
вызова функции):
Часть III. Основы языка PHP 130
void define(string $name, string $value, bool $case_sen=true);
Определяет новую константу с именем, переданным в $name, и значением $value.
Если нео
|
|