Индийский код...

Главные вкладки

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 14 сентября 2011 в 20:00

Недавно я продемонстрировал, по меткому замечанию kyky, "жгучий баттхерт" к кодировке cp1251.

Сегодня я осознал, кодировка тут непричем, баттхерт вызывают ее поклоники. Сейчас занялся поддержкой чужого сайта запущенного примерно полтора года назад. На cp1251. И несколько месяцев назад, переведенного на использование utf8.

И обнаружил там вот такую функцию...

<?php
function cp1251_to_utf8 ($txt)  {
    
$in_arr = array (
        
chr(208), chr(192), chr(193), chr(194),
        
chr(195), chr(196), chr(197), chr(168),
        
# ... и так до chr(255)
    
);  
     
    
$out_arr = array (
        
chr(208).chr(160), chr(208).chr(144), chr(208).chr(145),
        
chr(208).chr(146), chr(208).chr(147), chr(208).chr(148),
        
# ...
    
);  
     
    
$txt str_replace($in_arr,$out_arr,$txt);
    return 
$txt;
}
?>

Я считаю, что мило... Еще раз повторюсь, это код написан в 2011 году.

Комментарии

Аватар пользователя annya annya 14 сентября 2011 в 20:18

Что-то не особенно понятно, что этот код демонстрирует? То что разработчики не знают функции iconv? А причем тогда cp1251? Такой код для перевода любой кодировки можно накропать, если его сделают для перевода с utf-8, Вы перестанете любить UTF-8?)

Аватар пользователя kyky kyky 15 сентября 2011 в 2:21

Мило.
Вот только сами кодировки здесь ни при чем. Проблема в быдлокодере, который не знал, как выполнить задачу конвертации эффективно.
В России еще много информационных систем, которые требуют на входе данные в кодировке cp1251. Это почти все клиент-банки, платежные системы и тд. Поэтому не думай, что принцип "utf8-only" решит все проблемы.

зы: выложи на говнокод.ру

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 15 сентября 2011 в 7:56

"kyky" wrote:
Вот только сами кодировки здесь ни при чем.

Да, проблема не в кодировке. Проблема в наблюдаемой корреляции "использование данной кодировки" - "качество кода". Причем системы клиент-банк и платежные системы в эту корреляцию вполне укладываются.

Притом, что сам код я бы не назвал неприемлемым, несмотря на то, что он просто изобилует подобными алгоритмическими решениями. Видно, что у автора ушла куча сил и годы на проработку данного "внутри-студийного CMS".

Причем эта студия точно упоминается в числе пафосных в Н-ске.

Аватар пользователя orb orb 15 сентября 2011 в 9:50

"kyky" wrote:
Проблема в быдлокодере, который не знал, как выполнить задачу конвертации эффективно.
Скорее всего он знает как делать конвертацию, тут другой вопрос — индусам платят за количество кода, а не качество