Jak sprawić, aby polecenie plik nowy plik tekstowy powodowało powstanie pliku TXT w kodowaniu UTF-8 bez BOM, które potrzebuje każdy programista PHP?
Czasem tworzę proste skrypciki w PHP do testowania niektórych rzeczy.
Wtedy nie odpalał całego IDE programistycznego jak Eclipse czy NetBeans.
Plik tworzę wtedy z menu systemu Windows wybierając plik->Nowy Dokument i zmieniając rozszerzenie na PHP.
Niestety taki plik domyślnie ma kodowanie ASCII.
A jak wiadomo do strony jest potrzebny plik UTF-8 żeby wyświetlały się polskie znaki.
Czy da się zrobić, żeby od razu nowy plik miał kodowanie UTF-8?
Znalazłem tutaj instrukcję, która jest w zasadzie ok jednak okazało się, że powstały plik ma kodowanie UTF-8 ale Z BOM.
A jak wiadomo PHP nie obsługuje dobrze BOM wstawiając w miejsce tego bitu na stronie coś w stylu frazy: “d’z”.
A więc jak to zmienić?
Aby to osiągnąć wstawiłem w dokument literę “ą” jako znak, który pozwoli rozpoznać mojemu edytorowi i Notepadowi kodowanie UTF-8 i zapisałem w tym kodowaniu.
W efekcie teraz jak tworzę nowy dokument mam co prawda literkę ą, która wymaga wykasowania, ale to już trudniej jest przeoczyć po utworzeniu nowego pliku niż każdorazowa zmiana kodowania w opcjach.
Instrukcja wygląda tak:
1. Tworzymy plik TXT, wstawiamy ą, zapisujemy jako UTF-8 (ale nie w Notepad, ale np. Notepad2 albo Notepad++ które obsługują zapis bez BOM, czego Notepad z Windowsa nie potrafi)
2. Zmieniamy nazwę na TXTUTF-8.txt i wrzucamy do c:\windows\ShellNew
3. Uruchamiamy regedit i dodajemy do gałęzi HKEY_CLASSES_ROOT/.txt/ShellNew ciąg zwykły o nazwie FileName i wartości TXTUTF-8.txt.
Zapisujemy i testujemy czy działa. A więc plik -> nowy -> plik tekstowy.
Powinna być litera ą i kodowanie UTF-8.
Jak macie pomysł jak pozbyć się litery ą ażeby kodowanie UTF-8 było nadal to piszcie.

Dzięki za post, przydało się.
Generalnie działa tylko dla plików tworzonych ręcznie. Wysadza się dla tworzonych przy pomocy skryptów.