Bu hem windowsta hem de linuxta html entities sorununu çözer.
Bu fonksiyonlar capitalize karakterleri, normal karakterlere dönüştürür. kendin düzenleyebilirsin.
function general_ent_control($value){
$willchange = array ('\\r','\\n','(', ' ', ')', 'Ç', '&ccdil;', '<', '>', '&', '"', ' ', 'Ñ', 'ñ', 'Þ', 'þ', 'Ý', 'ý', 'ÿ', 'ß', 'Æ', 'Á', 'Â', 'À', 'Å', 'Ã', 'Ä', 'æ', 'á', 'â', 'à', 'å', 'ã', 'ä', 'Ð', 'É', 'Ê', 'È', 'Ë', 'ð', 'é', 'ê', 'è', 'ë', 'Í', 'Î', 'Ì', 'Ï', 'í', 'î', 'ì', 'ï', 'Ó', 'Ô', 'Ò', 'Ø', 'Õ', 'Ö', 'ó', 'ô', 'ò', 'ø', 'õ', 'ö', 'Ú', 'Û', 'Ù', 'Ü', 'ú', 'û', 'ù', 'ü', '®', '±', 'µ', '¶', '·', '¢', '£', '¥', '¼', '½', '¾', '¹', '²', '³', '¿', '°', '¦', '§', '«', '»' );
$withthis = array ('_','_','_', '_', '_', 'C', 'c', '_', '_', '_', '_', '_', 'N', 'n', 'T', 't', 'I', 'i', 'y', 'ss', 'E', 'A', 'A', 'A', 'A', 'A', 'A', 'a', 'a', 'a', 'a', 'a', 'a', 'a', 'D', 'E', 'E', 'E', 'E', 'f', 'e', 'e', 'e', 'e', 'I', 'I', 'I', 'I', 'i', 'i', 'i', 'i', 'O', 'O', 'O', 'O', 'O', 'O', 'o', 'o', 'o', 'o', 'o', 'o', 'U', 'U', 'U', 'U', 'u', 'u', 'u', 'u', 'R', 't', 'm', 'p', 'm', 'cent', 'Pound', 'Yen', 'frac14', 'frac12', 'frac34', '1', '2', '3', '_', '_', '_', '_', '_', '_' );
$value = str_replace ( $willchange, $withthis, $value );
return $value;
}
function force_ent_control($value){
$force_change = array ('(', ')', '&', 'Ç', '&ccdil;', '<', '>', '&', '"', ' ', 'Ñ', 'ñ', 'Þ', 'þ', 'Ý', 'ý', 'ÿ', 'ß', 'Æ', 'Á', 'Â', 'À', 'Å', 'Ã', 'Ä', 'æ', 'á', 'â', 'à', 'å', 'ã', 'ä', 'Ð', 'É', 'Ê', 'È', 'Ë', 'ð', 'é', 'ê', 'è', 'ë', 'Í', 'Î', 'Ì', 'Ï', 'í', 'î', 'ì', 'ï', 'Ó', 'Ô', 'Ò', 'Ø', 'Õ', 'Ö', 'ó', 'ô', 'ò', 'ø', 'õ', 'ö', 'Ú', 'Û', 'Ù', 'Ü', 'ú', 'û', 'ù', 'ü', '®', '±', 'µ', '¶', '·', '¢', '£', '¥', '¼', '½', '¾', '¹', '²', '³', '¿', '°', '¦', '§', '«', '»' );
$force_with = array ('_', '_', '_', 'C', 'c', '_', '_', '_', '_', '_', 'N', 'n', 'T', 't', 'Y', 'y', 'y', 'ss', 'E', 'A', 'A', 'A', 'A', 'A', 'A', 'a', 'a', 'a', 'a', 'a', 'a', 'a', 'D', 'E', 'E', 'E', 'E', 'f', 'e', 'e', 'e', 'e', 'I', 'I', 'I', 'I', 'i', 'i', 'i', 'i', 'O', 'O', 'O', 'O', 'O', 'O', 'o', 'o', 'o', 'o', 'o', 'o', 'U', 'U', 'U', 'U', 'u', 'u', 'u', 'u', 'R', 't', 'm', 'p', 'm', 'cent', 'Pound', 'Yen', 'frac14', 'frac12', 'frac34', '1', '2', '3', '_', '_', '_', '_', '_', '_' );
$force = str_replace ( $force_change, $force_with, $value );
return $force;
}
function ent_control($value){
$willchange = array ('(', ' ', ')', 'Ç', '&ccdil;', '<', '>', '&', '"', ' ', 'Ñ', 'ñ', 'Þ', 'þ', 'Ý', 'ý', 'ÿ', 'ß', 'Æ', 'Á', 'Â', 'À', 'Å', 'Ã', 'Ä', 'æ', 'á', 'â', 'à', 'å', 'ã', 'ä', 'Ð', 'É', 'Ê', 'È', 'Ë', 'ð', 'é', 'ê', 'è', 'ë', 'Í', 'Î', 'Ì', 'Ï', 'í', 'î', 'ì', 'ï', 'Ó', 'Ô', 'Ò', 'Ø', 'Õ', 'Ö', 'ó', 'ô', 'ò', 'ø', 'õ', 'ö', 'Ú', 'Û', 'Ù', 'Ü', 'ú', 'û', 'ù', 'ü', '®', '±', 'µ', '¶', '·', '¢', '£', '¥', '¼', '½', '¾', '¹', '²', '³', '¿', '°', '¦', '§', '«', '»' );
$withthis = array ('_', '_', '_', 'C', 'c', '_', '_', '_', '_', '_', 'N', 'n', 'T', 't', 'I', 'i', 'y', 'ss', 'E', 'A', 'A', 'A', 'A', 'A', 'A', 'a', 'a', 'a', 'a', 'a', 'a', 'a', 'D', 'E', 'E', 'E', 'E', 'f', 'e', 'e', 'e', 'e', 'I', 'I', 'I', 'I', 'i', 'i', 'i', 'i', 'O', 'O', 'O', 'O', 'O', 'O', 'o', 'o', 'o', 'o', 'o', 'o', 'U', 'U', 'U', 'U', 'u', 'u', 'u', 'u', 'R', 't', 'm', 'p', 'm', 'cent', 'Pound', 'Yen', 'frac14', 'frac12', 'frac34', '1', '2', '3', '_', '_', '_', '_', '_', '_' );
$value = str_replace ( $willchange, $withthis, $value );
return $value;
}Kullanımı:
$old = "Ş" li veri
$value ise son çıktı, yani "S"
$translate = get_html_translation_table ( HTML_ENTITIES );
$value = strtr ( $old, $translate );
$value = ent_control($value );