Создание серверных приложений на языке PERL



         

Переменные.


  • Контекст
  • Скалярные значения
  • Конструкторы скаляров

  • Конструкторы списков
  • Тип typeglobs
  • В Perl существует три типа структур данных: скаляры, массивы скаляров и хеши (hashes) - ассоциативные массивы скаляров. Обычно элементы массивов индексируются целыми числами, первый элемент - нулевой. Отрицательное значение индекса обозначает номер позиции элемента с конца. Хеши индексируются строками символов.

    Имена скалярных переменных всегда начинаются с символа '$' даже когда обозначают элемент массива.

    Пример:

    $var1 # Простой скаляр 'var1'

    $var1[0] # Первый элемент массива 'var1'

    $var1{'first'} # Элемент с индексом 'first'

    В случае использования имени массива "целиком" или его "среза" перед именем массива ставится символ '@'.

    Пример:

    @var1 # Все элементы массива var1 ( $var1[0], $var1[1], ... $var1[n])

    @var1[1,3,10] # Элементы $var1[1], $var1[3], $var1[10]

    @var1{'first','last'} # то же что и ( $var1{'first'}, $var1{'last'} )

    Хеш "целиком" начинается с символа '%'.

    Пример:

    %var, %key, %years

    Имена подпрограмм начинаются символом '&', если из контекста не видно, что это подпрограмма.

    Пример:

    &sub1, &test_prog, test(12)

    Имена таблиц символов всегда начинаются символом '*'.

    Каждый тип переменных имеет свою область памяти поэтому $var1 и $var1[0] совершенно разные переменные, хотя $var1[0] часть массива @var1. Так же @var1 и %var1 - разные массивы переменных.

    Имена переменных могут содержать любые буквенно-цифровые символы за исключением пробела и табуляции. Эти символы используются в качестве разделителей. Большие и малые буквы различаются поэтому $var1 и $Var1 - разные переменные. В Perl по умолчанию имена меток и указателей файлов пишут большими буквами.

    Контекст.

    Большое значение для правильного употребления встроенных функций имеет контекст использования результата этих функций, т.к. в противном случае они возвращают совершенно "непонятный" результат. В Perl имеется два главных контекста: скалярный и список (list). Проще говоря, если в левой части выражения имеется ввиду одно единственное значение, то это скалярный контекст. Если множество значений - список.




    Содержание  Назад  Вперед