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

в отличие от Pascal или




Урок 2. Типы данных в Perl, переменные, одинарные и двойные кавычки

Perl - не типизированный язык программирования, в отличие от Pascal или C (хотя очень похож на последний). В Perl есть 3 основных типа переменных: скаляры, массивы и хеши (ассоциативные массивы). Сегодня подробно разберем первый из типов.

Perl не требует обязательного объявления переменных. Переменная автоматически определяется как только встретилась в контексте. Т.к. Perl не типизированный язык, для него нет таких понятий как строковая переменная, числовая, байтовая и т.д. Это отрадно!
В зависимости от контекста, её содержимое автоматически конвертируется в числовое или текстовое.

Помимо этого скаляр может иметь и логическое значение True или False (Истина или Ложь). Если скаляр НЕ равен 0 или пустой строке, он имеет логическое True. В противном случае - False.

Обычная скалярная переменная начинается со спец. символа $, её имя должно начинаться только с латинской буквы или символа нижнего подчеркивания. В состав имени переменной могут входить также и цифры. Регистр букв тоже важен. К примеру $Var1 и $var1 это разные переменные.

Для присваивания переменной какого-то значения, служит знак присваивания. Как и в Basic, это символ равенства: "=". Работает он также как и в остальных языках, по этому не требует описания.

Чтобы присвоить переменной текстовую строку, её заключают в кавычки. Perl допускает применение как одинарных ('), так и двойных (") кавычек. Разница лишь в том, что в двойных кавычках переменные интерполируются (подставляются значения переменных), а в одинарных - нет. Для присваивания переменным числовых значений кавычек не требуется.

* * * *

Теперь давайте вспомним предыдущий наш урок. Попробуем модернизировать нашу программу с учетом полученных сегодня знаний. Изначально она выглядела таким образом:

#!/usr/bin/perl

print "Content-Type: text/html\n\n";

print "Мир дому твоему!";

Присвоим строку "Мир дому твоему!" какой-нибудь переменной, и будем выводить её значение. Программа получится следующей:

#!/usr/bin/perl

#programm 1

print "Content-Type: text/html\n\n";

$message = "Мир дому твоему!";

print "$message";

Пока пользы от этого мало. Теперь напишем программу, которая демонстрирует работу одинарных и двойных кавычек.

#!/usr/bin/perl

#programm 2

print "Content-Type: text/html\n\n";

$var1 = 16;

$var2 = "$var1 овец";

print 'Значение переменной $var1: ';

print "$var1<br>";

print 'Значение переменной $var2: ';

print "$var2";

Небольшой комментарий. Сначала мы присваиваем число 16 переменной $var1. Как было сказано ранее, числа не нужно обрамлять кавычками.

Следующая строка требует объяснения. Т.к. кавычки у нас стоят двойные, переменные в них интерполируются. Таким образом переменной $var2 мы присваиваем строку "16 овец".

Далее выводим строку "Значение переменной $var1: ". Т.к. кавычки стояли одинарные, переменная не интерполируется.

Затем выводим значение переменной $var1 и добавляем HTML тег "<BR>" для переноса текста на следующую строку. Далее ситуация повторяется.

* * * *

Ответьте на вопросы:

  • Какие символы может содержать название переменной?
  • Когда обычная скалярная переменная имеет логическое "Ложь"?
  • Какие из ниже приведенных переменных написаны неправильно или используются неправильно? Объясните, почему Вы так считаете?


  • $Var1="256"; $Var2="33.2"; $Var3='Var1, '; $_Var=some text here; $_var=some text here; $_var='some text here'; $-var="some text here";

    [Содержание]  [Вступление]  [необходимое для начала изучения]  [урок 1]  [урок 2]  [урок 3]  [урок 4]  [урок 5]  [урок 6]  [урок 7]  [урок 8]  [урок 9]  [урок 10]  [урок 11]  [урок 12]  [урок 13]  [урок 14]  [урок 15]  [урок 16]  [урок 17]  [урок 18]  [урок 19]  [урок 20]  [урок 21]  [урок 22]  [урок 23]  [урок 24]  [урок 25]  [урок 26]  [урок 27]  [урок 28]  [правила хорошего тона]  [приложение A]  [приложение Б]  [приложение В]  [заключение]  [благодарности] 

    Copyright (c) ClericICN, 2002


    Содержание раздела