[PHP]Problem z foreach, i z array_map |
[PHP]Problem z foreach, i z array_map |
7.12.2012, 21:18:24
Post
#1
|
|
Grupa: Zarejestrowani Postów: 824 Pomógł: 106 Dołączył: 14.03.2012 Skąd: Warszawa Ostrzeżenie: (0%) |
dlaczego zmienna $fuck wyswietla mi ostatnie 18 znakow a $dane wyswietla sie w calosci bez zmian ! Nie wiem co przeoczylem probowalem uzywac innych funkcji array_map, substr, lub dodac settype ale chyba o czyms nie wiem. Moglbym niby dac petle for i zwiekszac wartosc w [] i to bedzie tymczasowe rozwiazanie ale nie wierze ze sie nie da inaczej POMOCY -------------------- |
|
|
7.12.2012, 21:25:14
Post
#2
|
|
Grupa: Zarejestrowani Postów: 87 Pomógł: 3 Dołączył: 15.08.2009 Ostrzeżenie: (0%) |
A co chcesz osiągnąć?
-------------------- "Zło do triumfu potrzebuje tylko tego, aby dobrzy ludzie nic nie robili" |
|
|
7.12.2012, 22:32:23
Post
#3
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D |
To zobacz co robi funkcja substr i jak działa var_dump... Inna sprawa, że dla pętli foreach $dane to tylko ich kopia(!), więc jeśli chcesz zmieniać zawartość elementów tej tablicy to powinieneś pracować na referencji lub jawnie modyfikować te dane. Zmienna $value jest tylko lokalna i w każdym kroku powstaje na nowo. Poza tym jeśli używałeś array_map to pewnie chciałeś działać na elementach... tyle ze znając życie myślałeś, iż od razu Ci pozmienia. Lepiej użyj array_walk
-------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
8.12.2012, 21:51:25
Post
#4
|
|
Grupa: Zarejestrowani Postów: 824 Pomógł: 106 Dołączył: 14.03.2012 Skąd: Warszawa Ostrzeżenie: (0%) |
wie ktos dlaczego $klucz i $ilerazy wyswietla sie pod sabą? zrobilem to w tabeli zeby rozwiazac problem ale chcialbym bez tabeli.. o czym nie wiem? moze ktos przeczyta.. -------------------- |
|
|
8.12.2012, 22:16:48
Post
#5
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 4 Dołączył: 3.12.2012 Ostrzeżenie: (0%) |
hmm - mozesz wytlumaczyc jeszcze raz problem? Na razie zrozumialem to tak, ze pytasz dlaczego petla foreach wyswietla wartosci tablicy jeden pod drugim - w Twoim przypadku wyswietla to tak bo masz pdo koniec ciagu <br />
|
|
|
8.12.2012, 23:54:11
Post
#6
|
|
Grupa: Zarejestrowani Postów: 824 Pomógł: 106 Dołączył: 14.03.2012 Skąd: Warszawa Ostrzeżenie: (0%) |
uzylylem wpierw funkcji array_count_alues
ar_dump wartosci:
wlasnie problem jest taki jakby pomiedzy tymi zmiennymi byl znak konca linii (przedziela mi wyrazenie na pol) jak na to popatrze to znak konca lini mi dorabia po walue i przenosi "]=> klucz ponizej nie wiem czemu i tam nie robi nowej linii tylko nowy element sie zaczyna.. tak ms dzialac array count waules? php.5.2 -------------------- |
|
|
9.12.2012, 00:11:20
Post
#7
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D |
Możliwe, że masz tam niewidoczny normalnie znak przejścia do nowej linii. O ile w kodzie <br> służy do tego, to istnieją także znaki końca linii pokroju "\n" więc dla pewności na kluczach zrób sobie nl2br by wykryć czy są one tam faktycznie, bo wtedy Ci się "ujawnią". By się ich pozbyć zastosuj czyszczenie białych znaków poprzez trimowanie.
-------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
9.12.2012, 00:11:45
Post
#8
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 60 Dołączył: 25.02.2012 Ostrzeżenie: (0%) |
może te wartości użyte do skonstruowania kluczy tablicy mają na końcu znak nowej linii (lub <br />)
-------------------- there is much to be learned
|
|
|
9.12.2012, 08:31:08
Post
#9
|
|
Grupa: Zarejestrowani Postów: 824 Pomógł: 106 Dołączył: 14.03.2012 Skąd: Warszawa Ostrzeżenie: (0%) |
wlasnie byl robiony rtrim, o nl2br zapomnialem, teraz to dorzucilem + nl2br .. hmm zajrzyjcie w calosc moze cos ogarniecie, moze cos nie tak. Nie posluchalem sie z tym array_walkiem ale chyba to nie przyczyna problemu hm. Obcinam 16 znakow a data ma teoretycznie 10 tyle że dwa razy "-" w UTF-8 wychodzi ze ma po 4 znaki chyba ze ma po trzy i rzeczywiscie siedzi tam \n ale wtedy trim powinien zadzialac,
dodam ze darte tworzy funkcja dat , jezeli chodzi o znak ' - ' to w utf-8 odpowiednikiem jest - czyli 5 znaków, dziwne! wtf? anybody?
..niestety Daje efekt: Dnia 2012-11-24 odnotowano 1 wizyt. Dnia 2012-11-02 odnotowano 1 wizyt. Dnia 2012-11-03 odnotowano 1 wizyt. Dnia 2012-11-04 odnotowano 1 wizyt. Dnia 2012-11-11 odnotowano 1 wizyt. Dnia 2012-11-05 odnotowano 1 wizyt. Dnia 2012-11-08 odnotowano 1 wizyt. Dnia 2012-11-09 odnotowano 1 wizyt. Dnia 2012-11-10 odnotowano 1 wizyt. Dnia 2012-11-15 odnotowano 1 wizyt. Dnia 2012-11-12 odnotowano 1 wizyt. Dnia 2012-11-13 odnotowano 1 wizyt. ..itd (localhost) dobra juz ogarniete. trzeba bylo ucinac 10 znakow od pozycji -16 gdyz osttanie 6 to <br /> nie wiem dlaczego nie widac tego na princie w sensie War dumpie, pewnie to trzeba zapamietac bo tak ma byc. Sorki ale \/ mi nie dziala na klawie. -------------------- |
|
|
Wersja Lo-Fi | Aktualny czas: 23.04.2024 - 23:33 |