Salve a tutti ho un problema con la creazione e l'esecuzione di una funzione all'interno di una funzione!

Praticamente io ho questo codice (FUNZIONANTE)
codice:
//Estrai l'ordine degli elementi
			$nomi = $_POST['elementi'];

//Calcola Periodo
			$begin = new DateTime($_POST['data1']);
			$end = new DateTime($_POST['data2']);
			$end = $end->modify( '+1 day' ); 
			$interval = new DateInterval('P1D');
			$daterange = new DatePeriod($begin, $interval ,$end);

$count =0

//Compila database
			foreach ($daterange as $giorno)	{ 	
			$day = $giorno->format("Y-m-d");
			$nomifarmacie = addslashes($nomi[$count % count($nomi)]);
			$query = $pdo->query("UPDATE $tabella_calendario SET Farmacia='$nomifarmacie' WHERE Data='$day'");
			$count++;
			}
Adesso, siccome ho vari Submit in cui avviene ogni volta quasi la stessa cosa ma ogni volta con qualche variabile e operazioni diverse, vorrei creare una funzione ma ho riscontrato vari problemi

codice:
//QUESTA FUNZIONE VIENE ESEGUITA CORRETTAMENTE
function CalcolaPeriodo($DataIniziale, $DataFinale) {
    $begin = new DateTime($DataIniziale);
	$end = new DateTime($DataFinale);
	$end = $end->modify( '+1 day' ); 
	$interval = new DateInterval('P1D');
	return $Periodo = new DatePeriod($begin, $interval ,$end);
}

//Il problema risiede in questa funzione qui! Praticamente


function Cicla($Periodo, $FarmacieRiordinate, $Query) {
global $tabella_calendario, $count; //Di queste variabili si pu� fare l'echo quindi sono funzionanti 

print_r($FarmacieRiordinate) //� un array e il print funziona correttamente
 
foreach ($Periodo as $giorno)	{
	$day = $giorno->format("Y-m-d");

	$NomiFarmacie = addslashes($FarmacieRiordinate[$count % count($FarmacieRiordinate)]);

echo $day; //� corretto
echo $NomiFarmacie; //� corretto


print_r($Query); //Il problema risiede qui: Posto una porzione di output in basso

$count++;
	}

}

			$FarmacieRiordinate = $_POST['elementi'];
			$DataIniziale = $_POST['data1'];
			$DataFinale = $_POST['data2'];
			$Query = ("UPDATE $tabella_calendario SET Farmacia='$NomiFarmacie' WHERE Data='$day'");


			Cicla(CalcolaPeriodo($DataIniziale, $DataFinale), $FarmacieRiordinate, $Query);
OUTPUT print_r($Query):

codice:
UPDATE calendario SET Farmacia='Array' WHERE Data='1546297200'
UPDATE calendario SET Farmacia='Array' WHERE Data='1546297200'
UPDATE calendario SET Farmacia='Array' WHERE Data='1546297200'
UPDATE calendario SET Farmacia='Array' WHERE Data='1546297200'
UPDATE calendario SET Farmacia='Array' WHERE Data='1546297200'
UPDATE calendario SET Farmacia='Array' WHERE Data='1546297200'
UPDATE calendario SET Farmacia='Array' WHERE Data='1546297200'
UPDATE calendario SET Farmacia='Array' WHERE Data='1546297200'
UPDATE calendario SET Farmacia='Array' WHERE Data='1546297200'
UPDATE calendario SET Farmacia='Array' WHERE Data='1546297200'
Come posso risolvere? Grazie