Как найти BOM

Если Вы используете utf, то встречались с таким символом, как BOM (Метка порядка байтов).  Довольно бессмысленный символ при использовании utf-8, к которому неприемлим этот самый порядок.

Всё бы ничего, но этот лишний символ в начале файла приносит много проблем, когда попадает в вывод скрипта и происходит бом на сайте: не работает js, проблемы с куками и сессиями, просто непонятный символ на экране…. А уж редакторов, любителей вставить сей злосный символ куда не надо, предостаточно. Всегда проклинал блокнотоподобные редакторы, но изредко для быстрой правки использую notepad++. Уже сотню раз собирался выбросить его из-за дурацкого автокомплита, который даже тег <?php не позволяет нормально писать. Но злосный BOM стал его окончательным преговором, надо же при редактировании плагина сей злосный символ попал в плагин контактной формы, а в итоге у меня отвалился javascript в редакторе, я долго не мог понять, пока не включил консоль ошибок в любимом Operaи не вычислил злоумышлинника. Даль любимый Total Commnder и поиск файлов с текстом \xEF\xBB\xBF , для этого нужно отметить RegEx (2).

Asta la vista baby

Как найти BOM: 1 комментарий

  1. ntsandre

    Поиск BOM

    <?
    function duff($filename) {
    echo $filename . ' 0 && strpos($file[0], $symbols) === 0) {
    $file[0] = str_replace($symbols, », $file[0]);
    $handle = fopen($filename, ‘w’);
    fwrite($handle, join(», $file));
    fclose($handle);
    echo ‘ОБНАРУЖЕН яЛП!’;
    } else {
    echo ‘Чисто.’;
    }
    echo «\n»;
    }

    function duif($dir) {
    $ext = array(‘.php’, ‘.ctp’);
    $files = scandir($dir);
    foreach ($files as $file) {
    if (!in_array($file, array(‘.’, ‘..’))) {
    if (is_dir($dir . ‘/’ . $file)) {
    duif($dir . ‘/’ . $file);
    } else {
    if (in_array(substr($file, strrpos($file, ‘.’)), $ext)) {
    duff($dir . ‘/’ . $file);
    }
    }
    }
    }
    }

    duif(‘..’);

    ?>

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *