Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP/wyrażenia regularne] Jak zamienić liczbę 16 na 10
fragles
post 20.04.2009, 07:42:52
Post #1





Grupa: Zarejestrowani
Postów: 110
Pomógł: 0
Dołączył: 14.12.2008

Ostrzeżenie: (0%)
-----


W wyniku przekształceń kodowania (baza latin1 php/strona utf8) znaków otrzymuję
\u00b3 zamiast ł
\u00b9 zamiast ą

aby się to dobrze wyświetlało w przeglądarce potrzebuję z szestanstkowego
00b3 zrobić dziesiętny

nie wiem co robię źle, ale jakoś mi to wychodzi średnio, a właściwie nie udało mi się tego zrobić - jakby ktoś miał pomysł jak to zrobić to byłbym wdzieczny
Go to the top of the page
+Quote Post
piotrooo89
post 20.04.2009, 07:53:02
Post #2


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




hexdec


--------------------
Go to the top of the page
+Quote Post
fragles
post 20.04.2009, 08:42:53
Post #3





Grupa: Zarejestrowani
Postów: 110
Pomógł: 0
Dołączył: 14.12.2008

Ostrzeżenie: (0%)
-----


dzięki jakoś się z tym uporałem
  1. <?php
  2. $ret = preg_replace_callback('/u[a-z0-9]{4}/',  array( __CLASS__, 'zmien' ), $ret);
  3. public static function zmien($m)
  4.    {
  5.        $dw=hexdec(substr($m[0], 2));
  6.       // $dw=strlen($dw)<4?'0'.$dw:$dw;
  7.        return '--'.$dw.'--'.$m[0].'--';  //'u'.$dw;   //'.hexdec(substr($m[0], 2)).';';
  8.    }
  9. ?>

ale jest poważniejszy problem - te które ja otrzymuję sa uznawane jako błędne \u00B9 - wg tego poprawna ma być \u0105

i nie wiem jak co i dlaczego na jakiej zasadzie

Ten post edytował fragles 20.04.2009, 08:43:25
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 23.06.2025 - 18:41