Quantcast
Channel: Forum Pasja Informatyki - Najnowsze pytania
Viewing all articles
Browse latest Browse all 65276

Problem z literką 'ó' - PHP

$
0
0

Witam,

tworzę właśnie malutki portal i napotkałem pewien problem. Otóż napisałem sobie funkcję:

function lower_latin($string) {
	$polish_chars = array(' ', 'ą', 'ć', 'ę', 'ł', 'ń', 'ó', 'ś', 'ź', 'ż');
	$latin_chars = array('_', 'a', 'c', 'e', 'l', 'n', 'o', 's', 'z', 'z');
	$string = mb_strtolower($string, 'UTF-8');
	$string = str_replace($polish_chars, $latin_chars, $string);
	return $string;
}

Ma ona za zadanie zamienić string'a na łańcuch małych liter bez polskich znaków oraz z znakami '_' zamiast spacji. Przykładowo łańcuch: AbĆef ogsłÓc - ma zamienić na: abcef_ogsloc.

Gdy pobieram z bazy danych jakąś wartość, np.: 'Wilczór' to po przepuszczeniu przez funkcję prawidłowo zostaje on zamieniony na ciąg 'wilczor'. Niestety gdy pobieram jakąś wartość poprzez formularz i nastepnie przepuszczam ją poprzez funkcję to zamienia ona wszystkie znaki na podane odpowiedniki poza literką 'ó'. Efekt dla powyższego były następujący (gdy wprowadzam w formularzu AbĆef ogsłÓc): abcef_ogslóc. W bazie literka 'ó' zapisuje się jako 'ó'. Co może być powodem? Oczywiście UTF-8 bez BOM wszędzie ustawione.


Viewing all articles
Browse latest Browse all 65276

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>