Использование технологий WWW для доступа к базам данных


Cтруктуры данных


Perl поддерживает три типа данных:

  • скаляры
  • массивы скаляров
  • ассоциативные массивы скаляров (так называемые хэши).

Обычные массивы, как и в языке C, индексируются числами, начиная с нуля.

Ассоциативные массивы индексируются строками.

Простые скаляры (в дальнейшем мы будем также называть их переменными) всегда

начинаются со знака доллара: $, даже в том случае, когда мы обращаемся к

элементу массива.

?

$day простая переменная day

$day[28] 29 элемент массива day

$day{'Feb'} значение 'Feb' из хэша %day

$#day последний индекс массива @day

Простой массив начинается со знака @: ?

@day массив day - ($day[1],$day[2],...)

@day[3,4,5] то же, что и @day[3..5]

Ассоциативный массив (хэш) начинается со знака процент %:
%day (key1, val1, key2, val2, ...)

Каждый тип данных имеет свое именное пространство, поэтому вы можете использовать

одно и то же имя одновременно для скалярной переменной, массива или

хэша (а также для подпрограммы или метки) без опасения, что произойдет ошибка.

Perl различает большие и маленькие буквы: FOO, foo и Foo будут

рассматриваться Perl-ом как разные переменные. Имена, начинающиеся с буквы или

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

Имена,

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

Большинство таких имен зарезервировано, например $$ является

идентификатором текущего процесса.

Интерпретация команды или величины часто зависит от требований контекста.

Существует два основных контекста: скалярный и списковый. Некоторые операции

возвращают список величин если в контексте подразумевается список и одну величину,

если контекст скалярный.

Например, операция &ora_fetch в скалярном контексте возвращает количество

выбранных строк:

$nfields = &ora_fetch($csr);

В списковом контексте она возвращает массив выбранных строк:

@array = &ora_fetch($csr);
Левый аргумент определяет контекст правого аргумента.




Начало  Назад  Вперед



Книжный магазин