Иногда нужно узнать на массив, хэш или скаляр указывает ссылка.
ref возвращает строковый идентификатор типа ссылки (SCALAR, ARRAY, HASH, CODE, REF, GLOB, LVALUE)
или пустое значение для обычных переменных. Например:if (ref($r) eq "HASH") {
print "Хэш\n";
} elsif (ref($r) eq "ARRAY"){
print "Массив\n";
}
URL:
Обсуждается: http://www.opennet.me/tips/info/865.shtml
Более тяжелее с определение типа класса (ху из вис этот класс).
Но, слава богу, перл преград не знает.
И какая целевая аудитория у данного совета ?!зы:
perldoc -f ref
perldoc perlref
Целевая аудитория, которая не знает/помнит какой функцией это делать, а не которая знает, что это ref, только не умеет ею пользоваться, как Вы считаете, судя из Вашего коммента.
Спасибо от аудитории!
Я, например, хочу быстро изучить пёрл, я знаю что в других языка есть способ определять тип переменной, поэтому ищу в поиске и быстренько нахожу ответ.
Действительно спасибо!
Из гугла быстро нашел ответ :)
Нужная и полезная мини-статья :)
Огромное спасибо
И ещё раз спасибо!
Большое спасибо!
Спасибо-спасибо! Очень помогло!
Мастер-класс! СПАСИБО!!!