Forum Webscript.Ru

Программирование => Perl => Тема начата: Phoinix от 19 Апреля 2004, 17:05:46

Название: Проверка - является ли переменная ссылкой на массив
Отправлено: Phoinix от 19 Апреля 2004, 17:05:46
У меня в процедуру, передается переменная, но она божет быть как обычной переменной, так и ссылкой на массив, в зависимости от этого с ней будут проводится соответствующие действия, но как определить авляется ли переменная ссылкой или же нет?
Ничего кроме как:

if ($scalar =~m /^ARRAY\\(\\w*\\)$/) {...

я не придумал.

При условии:

if (@{$scalar}) {...

возвращается ошибка.

Существует ли другая возможность проверки переменной?
Название: Проверка - является ли переменная ссылкой на массив
Отправлено: Chs от 19 Апреля 2004, 17:22:24
perldoc -f ref
Название: Проверка - является ли переменная ссылкой на массив
Отправлено: commander от 21 Апреля 2004, 10:56:01
#!/usr/bin/perl -w
use strict;
my $var;
#$var->
if (ref($var) eq "ARRAY")
{
print "GOOD!";
}
else
{
print "NOT GOOD!";
}
Название: Проверка - является ли переменная ссылкой на массив
Отправлено: Phoinix от 21 Апреля 2004, 12:28:49
Chs
commander

Спасибо... в принципе, я ман прочитал, там все понятно...