About Canonical Normalization NFD. NFC
NFD
NFD has the characters fully expanded out. This is the faster normalization form to calculate, but the results in more code points (i.e. uses more space).
If you just want to compare two strings that are not already normalized, this is the preferred normalization form unless you know you need compatibility normalization.
NFC
NFC recombines code points when possible after running the NFD algorithm. This takes a little longer, but results in shorter strings.
Detais : http://stackoverflow.com/questions/7931204/what-is-normalized-utf-8-all-about
PHP Normalizer class
PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0
# yum install php-intl
if (!normalizer_is_normalized($filename)) {
$filename = normalizer_normalize($filename);
}