Проверка существования переменной

Сохраняем в формате pi (например, index.pl) в папке C:\WebServers. Запуска¬ем программу cmd.exe. Для этого выбираем пункт Пуск | Выполнить... и в окне Запуск программы в поле Открыть набираем cmd, а затем нажимаем ОК. Для запуска нашей программы в командной строке набираем команду:
peri C:\WebServers\index.pl
Нажимаем клавишу <Enter>. В итоге отобразится подсказка Enter name:. Вводим имя и нажимаем клавишу <Enter>. В итоге отобразится приветствие. При вводе русских букв возможны проблемы с кодировкой. По этой причине вводите имя латинскими буквами.
Рассмотрим программу построчно. В первой строке как обычно указывается путь к интерпретатору. Во второй строке мы выводим подсказку Enter name:. Это сообщение позволит определить, что конкретно требуется от пользователя. Выражение <STDIN> дает возможность пользователю ввести значение с клавиатуры. В этой строке программа ожидает действия до мо¬мента нажатия клавиши <Enter>. После нажатия клавиши <Enter> введенное значение присваивается переменной $name, а затем с помощью оператора print приветствие выводится на экран монитора, и программа завершается.
Чтобы вывести русские буквы, можно воспользоваться следующим кодом:
#!/usr/bin/perl -w use Encode;
print "Enter name:\n";
$name = <STDIN>;
$name = encode("iso-8859-1", $name); print "Hello, $name";
Предварительно следует установить модуль Encode. Для этого запускаем Ден¬вер, переходим на диск Z и запускаем файл Z:\usr\local\perl\bin\ppm-shell.bat. В командной строке должно быть приглашение:
ррш>
Набираем команду: install Encode Нажимаем клавишу <Enter>.
Для проверки существования переменной можно просто указать имя пере¬менной в операторе if:
#!/usr/bin/perl -w
# Выводим все сообщения об ошибках
# в окно Web-браузера
use CGI::Carp qw(fatalsToBrowser); print "Content-type: text/html\n\n";
if (defined($var)) {
print "$var Переменная определена";
}
else {
print "Переменная не определена\п";
}
print "<BR>"; if ($var) {
print "Переменная определена";
}
else {
print "Переменная не определена\п";
}
В данном примере в обоих случаях будет выведено сообщение "Переменная не определена", т. к. переменная даже не объявлена в программе. Если пере¬менной назначена пустая строка или 0, то в первом случае вернется "Пере¬менная определена", а вот второй случай вернет "Переменная не определена". Следует с осторожностью применять данный метод, иначе это может привес¬ти к логическим ошибкам, которые очень трудно найти.


Страница: 1 | 2 | 3 | 4


Web сайты на Perl и MySql