Как превратить возвращаемое значение подпрограммы Perl в ссылку на массив?

Пробую такой код:

my @rows = getRows($sth);
$self->stash(rows => \@rows);

getRows — это имя подфункции, и код работает в шаблоне. $rows — это массив.

Я пишу такой код:

$self->stash(rows => \getRows($sth));

$rows - это ссылка, это неправильно.

Если написать такой код:

$self->stash(rows => getRows($sth));

$rows - это HASH, это неправильно.

Есть ли способ написать двухстрочный код в один?


person Tony    schedule 05.08.2012    source источник


Ответы (1)


да. Ты можешь написать

$self->stash(rows => [getRows($sth)]);

Квадратные скобки [] служат для создания нужной ссылки.

person thb    schedule 05.08.2012