|
|
|
| cp1251 vs utf-8
---
Тынялся по инету, прочитал кучу за\против...
...всё таки потянуло на юникод.. так как не придётся при всяких аяксах и прочей лабуде перекодировать в цп1251 и вообще половина мелких проблем отпадёт.
Но опять же, я просто даже не имею представления что и как..:)
Сделал копию проекта и начал пробовать переводить его на юникод.
Тоесть поменял все заголовки попересохранял и т.д. В "главных" файлах где присутствуют эти самые заголовки текст принял нормальный вид под ютф. Но в отдельных подключаемых файлах, тоесть где не указана кодировка как я не пробовал пересохранять не хочет показывать русский текст и всё тут..
И возникает проблема как хранить в MySQL текст в "нормальном" виде?.. тоесть что бы действительно было видно что это русский, а не "кракозяблики"?)
Работать нормально с текстом, она то работает, но я не хотел бы наблюдать такого в бд..
---
Вобщем посоветуйте как правильно пользоваться UTF-8. Возможно есть какието мануалы и т.д.?
Так же хотелось бы услышать Ваши мнения по поводу этих кодировок. Какую используете Вы?Почему?
Готов слушать любую инфу:) | |
|
|
|
|
|
|
|
для: sl1p
(30.10.2008 в 22:01)
| | Исключительно UTF-8. CP1251 морально устарела. Для корректной работы при создании базы, при подключении к ней укажите кодировку UTF-8. И ознакомтесь с функциями библиотеки mbstring. | |
|
|
|
|
|
|
|
для: Dino
(30.10.2008 в 22:18)
| | в том то и дело что в базе изначально была ютф-8..
хы.. а насчёт библиотек, прямо опечален был)..
это придётся столько переписывать...
---
Самое что меня бесит это как аякс передаёт спец. символы.. их перекодировать с помощью iconv() в цп1251 нереально:\ | |
|
|
|
|
|
|
|
для: sl1p
(30.10.2008 в 22:20)
| | А как можно представить символ в cp1251, если его нет в этой кодовой таблице (cp1251)? | |
|
|
|
|
|
|
|
для: BinLaden
(30.10.2008 в 23:38)
| | Они мне совсем не нужны, но "ломают" преобразование iconv() ошибкой... если бы хотя бы можно было их вырезать или сходу както перевести в код этих символов.. я чесно говоря на это забил, так как провозился очень долго по гуглу и методами тыка, но так ничего и не получилось.
вырезать задолбусь так как их тысячи)...
а вот перевести.. | |
|
|
|
|
|
|
|
для: sl1p
(30.10.2008 в 22:01)
| | Уже два года как полностью перешел на юникод. Теперь когда приходится ковыряться с чьим-нибудь кодом в 1251 (в том числе и своим старым:), сразу возникает ощущение что я вырезаю гланды стеклорезом через соотвествующее место: вместо того чтобы просто программировать, начинаются пляски с кодировками. | |
|
|
|
|
|
|
|
для: sl1p
(30.10.2008 в 22:01)
| | Использую только utf-8, все работает, никаких проблем с кодировками, с базой данных вообще не бывает никакого мучительного геморроя. Не нужно ни с чем возиться, все работает по умолчанию. Использование cp-1251 - издевательство прежде всего над собой, а так же и иногда над пользователями созданных Вами ресурсов. | |
|
|
|
|
|
|
|
для: Sergeich
(31.10.2008 в 11:36)
| | ну база работает нормально, просто я там вижу кракозяблы. А так всё путём.. хотелось бы както это пофиксить)
расковырял не плохой проэкт который сделан на ютф, там аналогичная трабла)
+ реально везде заменить всё на mb_string - я с ума сойду. | |
|
|
|
|
|
|
|
для: sl1p
(31.10.2008 в 12:36)
| | >реально везде заменить всё на mb_string - я с ума сойду.
Я тоже так в свое время думал... а в итоге оказалось что поменять надо в 5-6 местах... | |
|
|
|
|
|
|
|
для: Loki
(31.10.2008 в 12:42)
| | Эм.. сори за возможно глупый вопрос, но если будет не мультибайтный символ, функции будут работать с ним как надо? Или в ютф нет не мультибайтных?) | |
|
|
|
|
|
|
|
для: sl1p
(31.10.2008 в 12:50)
| | в utf-8 есть мультибайтные и немультибайтные. Если уверены что в строке мультибайтных не будет, то можно не использовать mbstring | |
|
|
|
|
|
|
|
для: Loki
(31.10.2008 в 13:33)
| | ну а если и такие и такие?.. то mb_string отнесётся к не мультибайтным нормально?..
тоесть вообще если например пощитать длину не мультибайтной строки будет корректно?
и интересует как перевести текст в ютф который до этого был написан на cp1251? (Dreamweaver)
и в большинстве случаев при переводе в ютф текст просто заменяется пробелами) | |
|
|
|
|
|
|
|
для: sl1p
(31.10.2008 в 14:06)
| | >отнесётся к не мультибайтным нормально?..
нормально
>и в большинстве случаев при переводе в ютф текст просто заменяется пробелами
я похоже имел дело только с меньшинством случаев... | |
|
|
|
|
|
|
|
для: Loki
(31.10.2008 в 14:32)
| | я просто не могу понять как перевести это всё, что было заранее написано.
мб есть какието проги для массового перевода файлов? | |
|
|
|
|
|
|
|
для: sl1p
(31.10.2008 в 14:49)
| | Отрываете директорию с файлами, перекодируете содержимое текстовых файлов, сохраняете. | |
|
|
|
|
|
|
|
для: BinLaden
(31.10.2008 в 17:03)
| | как именно это сделать?)
трабл именно в массовом перекодировании) | |
|
|
|
|
|
|
|
для: sl1p
(31.10.2008 в 18:29)
| | вобщем это не важно, прошёлся везде блокнотом всё как надо:))
вот только один трабл, блокнот повставлял BOM.. как его теперь удалить? или хотя бы увидеть?:)
теперь везде где выводится текст долбаные отступы( | |
|
|
|
|
|
|
|
для: sl1p
(31.10.2008 в 18:48)
| | ищите редактор умеющий сохранять без него. многие это умеют. | |
|
|
|
|
|
|
|
для: Loki
(31.10.2008 в 20:07)
| | скачал notepad++ всё вроде окей..
нда.. тут либо надо понимать с чем имеешь дело либо не браться вовсе.. | |
|
|
|