Привет! подскажите плз как с помощью PHP урл кодировать только неанглиские буквы и те символы которые обязаны быть кодырованы.... как это делает Google Chrome при копировании URL Тоесть , уро вида Code: http://tema357.com/blog/2011/11/«национальная-программа-содействия/ превратить в это Code: http://tema357.com/blog/2011/11/%C2%AB%D0%BD%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0-%D1%81%D0%BE%D0%B4%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%B8%D1%8F/ а не в это, как эделает urlencode() Code: http%3A%2F%2Ftema357.com%2Fblog%2F2011%2F11%2F%C2%AB%D0%BD%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0-%D1%81%D0%BE%D0%B4%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%B8%D1%8F%2F зарание благодарен ! =)
Если вид ссылки неизвестен, то обрабатывай урленкодом все символы между слешами: http://tema357.com/blog/2011/11/«национальная-программа-содействия/ обрабатываешь "blog", "2011", "11", "«национальная-программа-содействия" по отдельности и формируешь новую ссылку.
PHP: <? $uri = array_filter(explode('/', str_replace('http://', '', 'http://tema357.com/blog/2011/11/«национальная-программа-содействия/'))); foreach ($uri as $key => $page) { if ($key) { $string .= urlencode($page) . '/'; } else { $string = 'http://' . $page . '/'; } } echo $string; ?> Если возможен вариант с протоколом https - можно регулярку использовать или 2 раза str_replace.
всем спасибо ... =) FindeR думаю у меня попроще =) PHP: $url = urlencode($url); $url = str_ireplace('%2F','/',$url); $url = str_ireplace('%3A',':',$url);