No. Crea un terribile pasticcio dei tuoi dati.
Sì. Puoi proteggere il tuo codice dalle iniezioni SQL.
Ecco ho già fatto una breve spiegazione
Devo solo aggiungere che non dovresti rovinare i tuoi array di dati di origine.
L'array POST ha a che fare con SQL. I dati possono essere inseriti in un'e-mail, un modulo HTML, un file, un servizio online, ecc. Perché trattarli tutti con la protezione SQL?
D'altra parte, puoi prelevare i tuoi dati non da POST ma da un file, online servizio, altra query.
Quindi, non devi proteggere gli array di origine, ma i dati effettivi che entrano nella query
Parlando di XSS, non ci sono più regole universali semplici.
Ma in generale, devi usare htmlspecialchars($data,ENT_QUOTES);
per tutti i dati non attendibili che emetti come testo e altri tipi di convalide in alcuni casi speciali, come i nomi dei file