Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Не перекодирует во транслит все символы
Здесь все расписано и в принципе приделано понятно, так вот при создании файлов не все файлы создаются на транслите, т.е. по факту не все строки переводятся из киры в транс, так в чем проблема? побывал с кодировкой и другими функциями отрабатываться не помогло..
OrmaJever
Отправлено: 11 Августа, 2011 - 00:05:39
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
всётаки дело имено в кодировке, название файла и буквы в масиве в разных кодировках и для програмы это абсолютно разные символы. Вот у меня есть небольшая функция
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
energ
Отправлено: 11 Августа, 2011 - 01:16:02
Гость
Покинул форум
Сообщений всего: 102
Дата рег-ции: Окт. 2010
Помог: 0 раз(а)
OrmaJever пишет:
echo char('a');
echo char('а');
Есть идеи как все это применить в сведение всего к одному формату и последующему конверту в латиницу? чет уже сонный сижу не как все воедино не соберется)) (Добавление) OrmaJever
слуш не подскажешь какая функция может перевести строку из вида "запрос" в вид "%D0%B7%D0%B0%D0%BF%D1%80%D0%BE%D1%81" ?
Viper
Отправлено: 11 Августа, 2011 - 07:27:30
Активный участник
Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007 Откуда: Симферополь
Помог: 98 раз(а)
energ пишет:
слуш не подскажешь какая функция может перевести строку из вида "запрос" в вид "%D0%B7%D0%B0%D0%BF%D1%80%D0%BE%D1%81" ?
вообще это браузер делает. Но не все.
Функция rawurlencode
Покинул форум
Сообщений всего: 102
Дата рег-ции: Окт. 2010
Помог: 0 раз(а)
energ пишет:
OrmaJever пишет:
echo char('a');
echo char('а');
Есть идеи как все это применить в сведение всего к одному формату и последующему конверту в латиницу? чет уже сонный сижу не как все воедино не соберется)) (Добавление) OrmaJever
слуш не подскажешь какая функция может перевести строку из вида "запрос" в вид "%D0%B7%D0%B0%D0%BF%D1%80%D0%BE%D1%81" ?
покопалсь я инете и нашел функцию которая должна переводить стрку вида "новые машины посмотреть" в "novie_mashini_posmotreti"
$text=substr($text, 0, 250);//обрезаем текст до приличных размеров(для URL)
$rus=array('ё','й','ц','у','к','е','н','г','ш','щ','з','х','ъ','ф','ы','в','а','п','р','о','л','д','ж','э','я','ч','с','м','и','т','ь','б','ю',' ');//задаем массив русских букв
for($i=0;$i=$count;$i++){//временно пережимаем всю кириллицу в WIN-1251, для корректной работы
$russ[]=iconv('UTF-8','CP1251//IGNORE',$rus[$i]);//IGNORE - символы, которых нет в конечной кодировке, будут опущены
}
$word=iconv('UTF-8','CP1251//IGNORE',$text);//пережимаем текст в WIN-1251
$word=str_replace($russ,$eng,strtolower($word));//меняем кириллические символы на символы транслита. strtolower можно убрать, тогда придется добавить большие буквы в массивы $rus и $eng.
returniconv('CP1251//IGNORE','UTF-8',$word);//возращаем строку в UTF-8
}
но код выдает ошибку не знаешь в чем может быть причина?
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.