in reply to getting in trouble avoiding global variables

In words: $items2show_ref is a reference (->), to an array ([...]), that has an element at offset ARRAYX that is a reference to an array (@{ ... }), onto which you wish to push $value:

push @{ $items2show_ref->[ARRAYX] }, $value;

Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
"Too many [] have been sedated by an oppressive environment of political correctness and risk aversion."