Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kod znaku?
Forum PHP.pl > Forum > PHP
Jabol
Wiem jak pobrać kod znaku, który jest w tabeli ASCII (ord()), ale jak pobrać kod znaku zapisanego np. w iso8859-2 lub utf-8?? Czy to się wogule da zrobić?
cycofiasz
Temat stary ale dla mnie nadal aktualny dry.gif

Jak pobrać kod numeryczny Unicode (UTF-8) danego znaku?

Czyli dla Ć -> 262 itp

Chciałbym uniknąć tworzenia tablicy asocjacyjnej, może jest jakaś gotowa funkcja?
batman
ord
Nie wiem czy zadziała dla polskich znaków.
#luq
ord, strlen etc. działają jedynie dla znaków ASCII.
Właśnie dla tego powinno się używać funkcji z rodziny mb_xxx bo one działają na całej tablicy unicode. Niestety nie ma funkcji mb_ord.
Natomiast chwila szukania i dostałem http://stackoverflow.com/questions/1365583...de-value-in-php powinno pomóc winksmiley.jpg
cycofiasz
Dzięki #luq , o to właśnie chodziło winksmiley.jpg

Wklejam ów funkcję dla potomnych:

  1. function mb_ord($string)
  2. {
  3. if (extension_loaded('mbstring') === true)
  4. {
  5. mb_language('Neutral');
  6. mb_internal_encoding('UTF-8');
  7. mb_detect_order(array('UTF-8', 'ISO-8859-15', 'ISO-8859-1', 'ASCII'));
  8.  
  9. $result = unpack('N', mb_convert_encoding($string, 'UCS-4BE', 'UTF-8'));
  10.  
  11. if (is_array($result) === true)
  12. {
  13. return $result[1];
  14. }
  15. }
  16.  
  17. return ord($string);
  18. }
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.