Przejdź do treści

Walidator INI

Sprawdzaj poprawność plików konfiguracyjnych INI, takich jak php.ini, my.cnf, wpisy pulpitu lub ustawienia narzędzi, zanim usługa odmówi uruchomienia. Walidator odczytuje każdy wiersz, akceptuje sekcje, pary klucz i wartość, komentarze oraz wartości ujęte w cudzysłowy, a także zgłasza wiersze, których nie potrafi zinterpretować, niezakończone nagłówki sekcji, puste klucze i niedomknięte cudzysłowy. Wskazuje też zduplikowane klucze i sekcje oraz wyświetla każdą sekcję wraz z jej kluczami, aby można było szybko przejrzeć strukturę.

Resetuj

Najczęściej zadawane pytania

Co oznacza, że plik INI jest tutaj prawidłowy?

Każdy niepusty wiersz musi być nagłówkiem sekcji, takim jak [database], kluczem z wartością, takim jak host = localhost, albo komentarzem. Wiersz, który nie spełnia żadnego z tych warunków, niezakończony nagłówek sekcji, pusty klucz lub niedomknięta wartość w cudzysłowie oznaczają błąd. Błędy powodują oznaczenie pliku jako nieprawidłowego i są wyświetlane wraz z numerami wierszy.

INI nie ma jednego standardu. Jakich reguł używa walidator?

Walidator stosuje popularny dialekt używany przez PHP, MySQL i wiele narzędzi: klucze i wartości są oddzielane znakiem = lub znakiem : jeśli nie ma =, komentarze zaczynają się od ; lub #, a znak ; lub # po białych znakach w wartości bez cudzysłowów rozpoczyna komentarz w wierszu. Nazwy sekcji mogą zawierać spacje, kropki i cudzysłowy, jak w sekcjach w stylu Git. Wartości nie są sprawdzane pod kątem typów, ponieważ INI nie ma typów danych.

Co się dzieje w przypadku zduplikowanych kluczy?

Klucz zdefiniowany dwukrotnie w tej samej sekcji jest zgłaszany jako ostrzeżenie wraz z numerem wiersza drugiej definicji. Większość parserów INI zachowuje ostatnią wartość, po cichu ignorując wcześniejszą. Plik nadal jest oznaczany jako prawidłowy.

Co się dzieje w przypadku zduplikowanych sekcji?

Powtórzony nagłówek sekcji jest zgłaszany jako ostrzeżenie, a jego klucze są łączone z kluczami pierwszego wystąpienia. Niektóre programy inaczej obsługują powtórzone sekcje, dlatego zazwyczaj najlepiej je połączyć.

Czy obsługiwane są klucze tablicowe, takie jak extension[]?

Tak. Klucze kończące się na [] zbierają wartości w listę, jak w plikach konfiguracyjnych PHP, a ich powtórzenia nie są zgłaszane jako duplikaty. Wykaz sekcji pokazuje dany klucz tylko raz.

Czym są klucze globalne?

Klucze występujące przed pierwszym nagłówkiem sekcji nie należą do żadnej sekcji. W wynikach są wyświetlane jako klucze globalne, a wiele narzędzi traktuje je jako wartości domyślne lub ustawienia najwyższego poziomu.

Jak obsługiwane są wartości ujęte w cudzysłowy?

Wartości w podwójnych cudzysłowach mogą zawierać ;, # i = oraz obsługują sekwencje ucieczki \", \\, \n i \t, natomiast wartości w pojedynczych cudzysłowach są traktowane dosłownie. Niedomknięta w tym samym wierszu wartość w cudzysłowie oznacza błąd. Zewnętrzne spacje w wartościach bez cudzysłowów są usuwane.

Jak szczegółowo wyświetlana jest struktura?

Wynik wyświetla każdą sekcję wraz z liczbą kluczy i ich nazwami, maksymalnie 200 sekcji i 50 kluczy na sekcję, a także łączną liczbę sekcji i kluczy. Wyświetlanych jest do 20 błędów i 20 ostrzeżeń, wraz z liczbą pozostałych.

Czy rozpoznawane są zagnieżdżone sekcje, takie jak [a.b]?

Nazwy sekcji są zachowywane dokładnie w zapisanej postaci, więc [a.b] to sekcja o nazwie a.b, a nie podsekcja a. To, czy program traktuje kropki jako oznaczenie zagnieżdżenia, zależy od danego programu. Walidator sprawdza jedynie, czy nazwa nie jest pusta i czy nagłówek jest zamknięty.

Jak duży może być plik i czy można go przekonwertować?

Dane wejściowe mogą mieć maksymalnie 5 MiB. Aby przekonwertować prawidłowy plik INI na JSON, YAML, TOML lub inny format, użyj konwertera formatów danych, który mapuje sekcje na obiekty.

O OneClick Pro

OneClick Pro to bezpłatny zbiór ponad 150 narzędzi internetowych do codziennej pracy: konwertowania obrazów i jednostek, formatowania i walidowania kodu, sprawdzania domen i SEO oraz pracy z tekstem, datami i liczbami. Każde narzędzie działa bez rejestracji i subskrypcji, a wprowadzone dane służą wyłącznie do obliczenia wyniku i nigdy nie są przechowywane. Używaj go jako podręcznego zestawu narzędzi do jednorazowych zadań lub dodaj do zakładek te, z których korzystasz każdego dnia.