Nel tuo esempio è sbagliata a priori la logica.
Seguendo il tuo schema: 1) prima dichiari la variabile, 2) poi la inserisci nell'array, 3) poi chiami una funzione che modifica la variabile ma NON la inserisci nell'array, 4) verifichi la variabile dell'array che non è stata minimamente modificata.
Inoltre all'interno di una funzione non puoi modificare un valore posto all'esterno, o passi l'array alla funzione lo modifichi e lo restituisci oppure lo crei nuovo come nel mio esempio.
La modifica che suggerisco è
include "funzioni.php";
$array = array(
"array1" => NULL,
);
$array = funzione();
if ($array["array1"] == NULL){
echo "Il valore non è cambiato (NULL).";
} else {echo "Il valore è cambiato.";}
la funzione sarà:
function funzione(){
return array(
"array1" => TRUE,
);
}
Spero di essermi spiegato bene.
Buon natale a tutti