Ciao, quel null è dato dal fatto che l'elemento con chiave "creation_date" non esiste nell'array $data.

La condizione viene comunque risolta perché avviene un autocasting del tipo di dato per ciò che è richiesto; quindi in questo caso il valore null equivale a false.

Il notice salta però fuori perché stai tentando di accedere ad una variabile che non esiste.

In casi del genere è bene verificare l'esistenza con una cosa del genere:
codice:
if(isset($data['creation_date'])){ ... }
In questo modo, se la variabile risulta nulla, la funzione isset() restituirà false e non salterà fuori alcuna notifica.