Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 22.09.2014 Ostrzeżenie: (0%)
|
Witam,
jestem poczatkujacy w temacie PHP i oraz pisze pierwszy raz na tym forum. Dlatego z gory przepraszam za bledy. Mam problem z wczytaniem pliku tekstowego, z danymi przelewow bankowch w formacie zblizonym do CSV (nie prawdziwy CSV). Najpier wczytuje plik do zmiennej $content. Potem parsuje w petli zmienna $content w poszukiwaniu oddzielonych przecinkami, lub innymi znakami separacji pol danych, pole po polu i linia po linni. Parsowane dane sa wrzucane do wielowymiarowej tablicy, gdzie lokalizuje wszystkie przelwy oraz wszystkie pola dla danego przelewu. Skrypt pracuje poprawnie jak w polach tekstowych nie ma polskiego znaku. Jezeli chociaz w jednym polu danego wiersza znajduje sie polski znak, to wszystkie elementy tablicy dotyczacej danego wiersza sa puste. Dlaczego? Tutaj wrzuam petle ktora parsuje:
Nie moge wrzucic screen shootu, ale wglada to w ten sposob, ze kiedy pointer parsujacy natrafi na bajt zawierajacy polski znak, to element tablicy jest pelen znakow, dopiero kiedy pointer parsujacy dojdzie do konca pola, to element tablicy zastepowany jest nul. Tutaj wklejam wynik ekranu podczas uruchomienia kodu, w celu debugu dodalem tam wyswietlanie zmiennych:
Dla wygoty debugowania w nawiasie wyswietla znak (A) oraz jego kod ASCII (65) przy kazdym wczytanym znaku. Widac ze skrypt prawidlowo odczytal pola w liniach drugiego listningu debugujacego 13,31,69 i tablica $csv zawiera dane, ale poczawszy od linii (tu mowie caly czas o debugu) 108, tablic $csv znika, zamienia sie w null, bo w polu byl polski znak, widac to w linni 97. Jezeli usune polski znak Ł z pliku tekstowego, to petla parsujaca przejdzie poprawnie. Czy ktos moze mi pomoc? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%)
|
zamiast echo debug daj po prostu var_dump (cake?)
|
|
|
|
tomas3man [PHP] Problem z tablica z polskimi znakiami 22.10.2014, 17:53:30
Pyton_000 pokaż kilka wierszy z pliku
I prawie na pewno da ... 22.10.2014, 19:45:05 
tomas3man Cytat(Pyton_000 @ 22.10.2014, 20:45:0... 23.10.2014, 09:04:20 
kreatiff CytatDlaczego tak uwazasz? Nie rozumiem. Petla ite... 23.10.2014, 10:38:11 
tomas3man Cytat(kreatiff @ 23.10.2014, 11:38:11... 23.10.2014, 11:05:40
kreatiff Wykorzystaj mb_strlen zamiast strlen. 22.10.2014, 21:23:52
Pyton_000 jak użyjesz funkcji którą podałem to przy odczycie... 23.10.2014, 09:35:30 
tomas3man Cytat(Pyton_000 @ 23.10.2014, 10:35:3... 23.10.2014, 17:22:48
Pyton_000 To po prostu przykład z manuala Nie chciało mi si... 23.10.2014, 12:12:29 
tomas3man Cytat(Pyton_000 @ 23.10.2014, 19:39:0... 24.10.2014, 16:50:54
Pyton_000 Pokaż wynik z tego vd 24.10.2014, 18:54:17
tomas3man Cytat(Pyton_000 @ 24.10.2014, 19:54:1... 24.10.2014, 20:10:07 ![]() ![]() |
|
Aktualny czas: 25.12.2025 - 00:23 |