Op regel 8 staat een "!" voor filter_var, weet je zeker dat dit klopt?
In het else-deel op de regels 112-134 druk je niets af. Druk $errormelding eens af, en bepaal dan of de invoer echt fout was, of de controle wellicht te streng is (of mogelijk niet klopt).
Bij tekst zou ik ook leestekens, accenten et cetera verwachten, en telefoonnumers hebben ook spaties, streepjes en andere symbolen (*, # etc). Ik weet niet of ik dat in zo'n strak patroon zou willen / kunnen vangen.
Mogelijk zou je de fouten ook in een array $errors kunnen vangen, waarbij je een mapping van veldnaam => foutmelding maakt, dan kun je er met een foreach doorheen (in plaats met tig if-jes). Of wellicht nog beter, als je naar het formulier wordt teruggestuurd dat je de foutmelding direct bij het betreffende veld zet met een omschrijving van wat er niet klopt en/of hoe dit verbeterd dient te worden.