Jak zakodowac UTF-8 po stronie php nie html

Bardzo Prosze o odpowiedź, jest mi to bardzo potrzebne i ważne żeby mi nie mówić wybierz utf-8_polish_ci w mysql bo to wiem chodzi mi czysto po stronie kodu php

Dla kodu PHP generującego HTML:

header("Content-type: text/html; charset=utf-8");

Należy pamiętać tylko, że to wywołanie musi się znaleźć przed jakimkolwiek wyświetleniem tekstu, inaczej serwer nie będzie w stanie już dodać tego nagłówka do odpowiedzi ze względu na jej strukturę.

Dziękuje, czyli mam rozumieć że na przykład jak wkładam dane do bazy danych takie jak
jakieś wiadomości np w formularzu kontaktowym to ta funkcja wyżej musi się znaleźć na nad
$con->query(); ?

Wywołanie tej funkcji dodaje nagłówek, który jest wykorzystywany przez klienta (przeglądarkę) do interpretacji tekstu, nie do końca ma związek, z tym co mówisz.

Zakładając, że masz problem z kodowaniem, to jeśli jest to serwer na Linuksie i jest to VPS, a nie hosting www, sprawdziłbym, czy twój aktualnie używany przez system język to nie C, tylko jakiś ze wsparciem UTF-8, jeśli tego nie ma, rzeczy komunikujące się używając, chociażby socketów uniksowych (php-fpm), nie będą działać poprawnie i pojawią się “krzaczki”.