- 1
- 2
- 3
if (ref($val) eq 'ARRAY') {
# ...
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−156
if (ref($val) eq 'ARRAY') {
# ...
}
mrtaryk 13.10.2010 15:54 # +2
seonull 13.10.2010 16:03 # −2
vrurg 13.10.2010 16:56 # 0
seonull 13.10.2010 17:10 # −5
vrurg 13.10.2010 17:16 # +4
seonull 13.10.2010 17:56 # −5
Анонимус 13.10.2010 19:27 # +2
Oleg_quadro 13.10.2010 19:57 # 0
fey 13.10.2010 20:14 # +1
то очень часто одна функция на перле принимать может параметры записанные в разных формах,
Например
sub some_func{
if(ref $_[0] eq 'HASH') {
#параметр передан в виде ссылки на хеш , то есть что то типа структуры или класса если так понятнее
}
else {
# Данные идут обычным списком
}
};
А где то в коде вызовы
some_func( {'name'=>'Vasya','age'=>15} );
some_func('Petya',22);
Одно из применений ref, так же через ref можно узнать название класса объекта.
То что автор посчитал это говнокодом, просто свидетельствует о том что автор поверхностно знаком с перлом
seonull 13.10.2010 20:41 # 0
fey 13.10.2010 20:26 # 0
http://perldoc.perl.org/functions/ref.html