Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [XLS/PHP] Konwersja symboli
michail_w
post
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 18.10.2009

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


Witam
Zajmuje sie ostatnio pewnym projektem, gdzie mam do czynienia z symbolami. Korzystam z gotowej klasy PHP Excel Reader http://code.google.com/p/php-excel-reader/.
Problemem jest to, że baza SQL jest na UTF8 (dokładniej utf8-general-ci), a pliki XLS nie - zdaje sie że na Windows-1250. Klasa sama w sobie konwertuje standardowe litery, nawet polskie znaki też zamienia dobrze (funkcją iconv). Problemem jest jednak to, że moje arkusze zawierają w sobie symbol stopnia celcjusza ( ° ). Po wyświetleniu tego na stronie pojawia mi sie standardowy kwadrat z pytajnikiem :-]

Da sie jakoś przekonwertować dobrze ten znaczek?

PS. dodam tylko że PHP w wersji 5.3 a i nie kierujcie sie że stopnia celcjusza, bo to znaczek każdego stopnia. Np. kąta w figurze. Ja akurat uzywam do temperatury, więc stąd taki opis...

Ten post edytował michail_w 22.06.2011, 15:54:21
Go to the top of the page
+Quote Post
elektrrrus
post
Post #2





Grupa: Zarejestrowani
Postów: 175
Pomógł: 18
Dołączył: 11.06.2007
Skąd: Koszalin/Poznań

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


Jeśli problem jest tylko z tym znakiem to najprostsze i nagłupsze podejście to str_replace (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
michail_w
post
Post #3





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 18.10.2009

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


No zgadza sie, problem jest faktycznie z jednym znakiem. Ale albo faktycznie jestem tak głupi, albo coś mi nie jest wiadome...
Kiedy robię cos takiego po stronie swojego skryptu (pliki kodowane w utf8):
  1. str_replace("◻","",$string);

to nie widać efektu. Gdy robię to po stronie klasy (też jej plik jest kodowany w utf8, to zarówno przed konwersją iconv jak i po nie widać żadnych efektów.

Tak samo gdy we wszystkich przypadkach próbowałem podmienić znak za pomocą wartości HEX:

  1. str_replace(0x0B,"",$string);

Takie rozwiązanie też nic nie daje.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 22:52