Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: htmlentities dla kodowań ISO 8859 oraz filtrowanie
Forum PHP.pl > Inne > Oceny
tosiek
Napisałem 3 funkcje z czego 2 to naśladownictwo oryginałów - głównym bohaterem są tablice (czy ktoś mógłby mi przedstawić racjonalne zastosowanie htmlentities?). Filtrowanie danych w kodowaniach ISO/IEC 8859. Pierwsza funkcja usuwa wszystko co niepotrzebne z ciągu dla tych kodowań - tak przy okazji czy ktokolwiek widział kiedykolwiek dywiz w przeglądarce (mi się nie chce wyświetlić)?
Swoją drogą w wyrażeniach regularnych podawać lepiej zakresy typu \\x00-\\x08 czy jeśli jest możliwość to wylistować wszystkie możliwości?

Kolejne dwie funkcje to prób naśaldownictwa htmlentities() i html_entity_decode()

Jedyny mankament, którego nie jestem pewien to format encji tj. przy podwójnym kodowaniu encji:
  1. if ($double_encode == true) {
  2. $string = str_replace("\x26", '&', $string); // or &
  3. } else {
  4. $string = preg_replace('/&(?!(((#|#X|#x)+[a-fA-F0-9]{1,4})|[a-zA-Z]{1,10}[0-9]{0,3})+;)/', '&', $string, -1); // or &
  5. }

A konkretniej w momencie kiedy ma zostawić &(ampersand) w spokoju gdy występuje jako prefix encji.

No i czy przy dekodowaniu encji wystarczy pojedyncze dekodowanie podwójnie zakodowanych encji?(tutaj na forum są chyba 3 krotnie dekodowane)
wiewiorek
htmlentities jest stosowane dla bezpieczeństwa, np. user wpisuje cos w inpucie z cudzyslowami, co skutkuje 'wylaniem sie' tego poza inputa - w najlepszym wypadku.

Nie chce mi sie analizowac Twego kodu, bo nie widze sensu pisac czegos co juz zostalo zrobione, a tymbardziej czegos jak sie nie wie po co to cos jest. businesssmiley.png
tosiek
Cytat
htmlentities jest stosowane dla bezpieczeństwa, np. user wpisuje cos w inpucie z cudzyslowami, co skutkuje 'wylaniem sie' tego poza inputa - w najlepszym wypadku.

Htmlentities podmienia każdy znak spoza zakresu ASCII w kodowaniu iso-8859-1 na zwykłą encję htmlową tj z zakresu 0x9F - 0xFF. Do tego co piszesz służy funkcja htmlspecialchars która podmienia znaki specjalne używane w html'u jak LESS-THAN SIGN oraz GREATER-THAN SIGN

Cytat
nie widze sensu pisac czegos co juz zostalo zrobione, a tymbardziej czegos jak sie nie wie po co to cos jest.

To masz jakiś lepszy pomysł jak użyć tablic z encjami dla innych kodowań niż te dostępne w manualu?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.