Как только функция завершена, все содержимое будет удалено, если вы не назначите его для $ this-> или Global для переменной.
Итак, чтобы сохранить переменную, вам нужно выполнить одно из следующих действий:
Global $test;
$this->test = $test;
Или, поскольку вы возвращаете переменную в func1, вы можете передать ее в func2
public function func1()
{
$test = array(1,2,3);
return $test;
}
public function func2($test)
{
// Do something
}