![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 654 Pomógł: 17 Dołączył: 19.03.2006 Skąd: z kosmosu ;) Ostrzeżenie: (0%) ![]() ![]() |
Witam, napisałem klasę do parsowania/edytowania plików INI.
Problem tkwi w funkcji WriteToINI() gdyż zapisuje ona tylko jedną kategorię zmiennych, a funkcja WriteToXML() zwraca poprawny wynik w XML... Nie wiem co jest przyczyną... może to mały błąd, literówka? ![]() Dziękuję, Babcia@Stefa -------------------- Środowisko testowe (desktop) - Gedit, lighttpd, sftp, rsync, xfce4-terminal, chromium, firefox4 | System: Gentoo ~x86
O'Neill - serwer WWW @ lighttpd, links, nano, rsyncd, sftpd | System: Debian ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 304 Pomógł: 51 Dołączył: 4.02.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
jest tak:
a powinno być:
Pozatym po co odkrywasz drugi raz koło? Na co Ci metoda ReadFormFile? Przecież jest wbudowana funkcja parse_ini_file()... Ten post edytował -=Peter=- 23.03.2008, 16:17:44 -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 654 Pomógł: 17 Dołączył: 19.03.2006 Skąd: z kosmosu ;) Ostrzeżenie: (0%) ![]() ![]() |
Pozatym po co odkrywasz drugi raz koło? Na co Ci metoda ReadFormFile? Przecież jest wbudowana funkcja parse_ini_file()... 1. To klasa która od zera czyta pliki INI i je przetwarza. Cytat Pozatym po co odkrywasz drugi raz koło? ![]() ![]() TO MÓJ 200 POST ! ![]() Dziękuję, Babcia@Stefa Ten post edytował Babcia@Stefa 23.03.2008, 16:22:16 -------------------- Środowisko testowe (desktop) - Gedit, lighttpd, sftp, rsync, xfce4-terminal, chromium, firefox4 | System: Gentoo ~x86
O'Neill - serwer WWW @ lighttpd, links, nano, rsyncd, sftpd | System: Debian ![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 304 Pomógł: 51 Dołączył: 4.02.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Oj, chodzi mi o to że metoda ReadFromFile mogła by wyglądać tak:
-------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 654 Pomógł: 17 Dołączył: 19.03.2006 Skąd: z kosmosu ;) Ostrzeżenie: (0%) ![]() ![]() |
Heh, a to wykorzystywanie gotowej funkcji, ja chciałem mieć własną
![]() @edit Do konfiguracji w formacie LUA jest jakaś wbudowana klasa? (jeśli nie to napiszę takową ![]() Dziękuję, Babcia@Stefa Ten post edytował Babcia@Stefa 23.03.2008, 16:29:12 -------------------- Środowisko testowe (desktop) - Gedit, lighttpd, sftp, rsync, xfce4-terminal, chromium, firefox4 | System: Gentoo ~x86
O'Neill - serwer WWW @ lighttpd, links, nano, rsyncd, sftpd | System: Debian ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 304 Pomógł: 51 Dołączył: 4.02.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Hmm a dlaczego uparłeś się aby tej funkcji nie wykorzystać? Nie pojmuję tego... No chyba, że wolisz sobie utrudniać życie, jezdzić z Krakowa do Warszawy przez Gdańsk
![]() Pozatym ta Twoja funkcja jest dużo mniej wydajna od tej, którą ja podałem, bo wyrażenie regularne w pętli raczej nie jest zbyt ekonomiczne. -------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 654 Pomógł: 17 Dołączył: 19.03.2006 Skąd: z kosmosu ;) Ostrzeżenie: (0%) ![]() ![]() |
Tak.. ale przebudowa teraz klasy będzie bardzo kosztowna...
Dziękuję, Babcia@Stefa -------------------- Środowisko testowe (desktop) - Gedit, lighttpd, sftp, rsync, xfce4-terminal, chromium, firefox4 | System: Gentoo ~x86
O'Neill - serwer WWW @ lighttpd, links, nano, rsyncd, sftpd | System: Debian ![]() |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 535 Pomógł: 27 Dołączył: 3.05.2005 Ostrzeżenie: (20%) ![]() ![]() |
Cytat Tak.. ale przebudowa teraz klasy będzie bardzo kosztowna... Wlasnie w OOP chodzi o to aby tak nie bylo... P.S. Nie mam polskich znakow |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Wlasnie w OOP chodzi o to aby tak nie bylo... Dokładnie, więc jak mówisz że taka zamiana wymagają dużo zmian, znaczy że masz źle napisane. Bo wymagana jest hermetyzacja, wtedy pewne fragmenty podmieniasz, ale nic oprócz tego nie musisz robić, całość już powinna z tego korzystać nieświadoma zmian. -------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 175 Pomógł: 17 Dołączył: 23.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Wiemy wszyscy, że OOP jest zwykle wolniejsze od programowania strukturalnego, czemu więc nie użyjesz funkcji parse_ini_file (o której mowa powyżej) dla przyspieszenia wydajności, tylko "uparcie" spowalniasz swój skrypt?
-------------------- serwiswww.pl
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Wiemy wszyscy, że OOP jest zwykle wolniejsze od programowania strukturalnego, czemu więc nie użyjesz funkcji parse_ini_file (o której mowa powyżej) dla przyspieszenia wydajności, tylko "uparcie" spowalniasz swój skrypt? Użycie parse_ini_file() lub nie jest niezależne od stylu programowania, bo równie dobrze implementacje można napisać strukturalnie. Ogólnie nie ma sensu pisać coś co już jest napisane i to lepiej. -------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 535 Pomógł: 27 Dołączył: 3.05.2005 Ostrzeżenie: (20%) ![]() ![]() |
Wiesz to minimalne zwolnienie nadrabia sie przejrzystoscią i latwoscia w modyfikowaniu
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
Hm? Zwolnienie? No bez jaj, to są milionowe części sekundy, to nie spowalnia. Nie żyjemy w czasach procesorów 286. Będzie ta funkcja wywoływana 10000000000 razy dziennie? Śmiem wątpić. Sam kiedyś myślałem, że trzeba każdą rzeczy napisać tak, aby była maksymalnie szybka, ale to ślepa uliczka, bo nie ma nic za darmo i spada przejrzystość kodu.
Pozdrawiam. -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 535 Pomógł: 27 Dołączył: 3.05.2005 Ostrzeżenie: (20%) ![]() ![]() |
Cysiaczek moj post mial sie odniesc do wypowiedzi likemandrake
![]() |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 175 Pomógł: 17 Dołączył: 23.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Sedziwoj) Ogólnie nie ma sensu pisać coś co już jest napisane i to lepiej. W PHP zwykle jest tak (nie zawsze), że jeśli coś jest zaimplementowane natywnie, czy to przez moduł do parsera PHP (a więc jest napisane dla języka PHP w innym języku niż PHP - C, C++, itp.) działa po prostu szybciej, więc pod tym względem nie ma sensu pisać własnych implementacji, po za tym, że kod działa wolniej, to jest bardziej obszerny. Taki głupi przykład: pisanie wyrażenia regularnego do sprawdzania, czy ciąg tekstowy zawiera tylko znaki alfabetu łacińskiego i puszczenie przez powiedzmy funkcję preg_match jest znacznie wolniejsze niż użycie funkcji ctype_alfanum, która robi to samo, lecz znacznie wydajniej. Z wyrażeniami regularnymi jest troche inna bajka, ale tu chciałem tylko pokazać jaki skok wydajności można uzyskać. Cytat(wlamywacz) Wiesz to minimalne zwolnienie nadrabia sie przejrzystoscią i latwoscia w modyfikowaniu Zgadzam się z Tobą. Przede wszystkim kod staje się przenośny, co jest bardzo ważne w zastosowaniach biznesowych i nie tylko. To minimalne zwolnienie może mieć duży wpływ na wydajność w baaardzo rozbudowanej aplikacji, ale coś za coś. @Cysiaczek Bardziej chodziło mi o optymalizację jak największą jaką się da, lecz żeby nie przesadzać z czasem poświęconym na ten proceder. Mam tu na myśli wiedzę o danym problemie i jak sobie z nim poradzić, a nie potem spędzać dziesiątki godzin nad szukaniem problemu "Czemu to tak wolno działa?". Podsumowując, potrzebne przede wszystkim doświadczenie, znajomość funkcjonalności i wydajności funkcji wbudowanych, wiedza na temat jakiegoś problemu, czy lepiej użyć funkcji A, czy funkcji B. Ameryki nie odkryłem, chciałem troszkę (za bardzo) rozwinąć własną myśl nad moją poprzednią wypowiedzią. Pozdrawiam -------------------- serwiswww.pl
|
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
W PHP zwykle jest tak (nie zawsze), że jeśli coś jest zaimplementowane natywnie, czy to przez moduł do parsera PHP (a więc jest napisane dla języka PHP w innym języku niż PHP - C, C++, itp.) działa po prostu szybciej, więc pod tym względem nie ma sensu pisać własnych implementacji, po za tym, że kod działa wolniej, to jest bardziej obszerny. Taki głupi przykład: pisanie wyrażenia regularnego do sprawdzania, czy ciąg tekstowy zawiera tylko znaki alfabetu łacińskiego i puszczenie przez powiedzmy funkcję preg_match jest znacznie wolniejsze niż użycie funkcji ctype_alfanum, która robi to samo, lecz znacznie wydajniej. Z wyrażeniami regularnymi jest troche inna bajka, ale tu chciałem tylko pokazać jaki skok wydajności można uzyskać. Z preg_match() trzeba uważać, bo nie wiem czy wiesz, że rozbicie przez nią jest szybsze od expolode()... Ale jak napiszesz coś co ręcznie, znak po znaku, sprawdza... lepiej nie mówić. Wydajności nie ma, do tego napomknięta znajomość problemów, przy wyszukiwaniu wzorca są dobre algorytmy, ale ich implementacja nie należy do przyjemnych, więc użyjmy tego co jest. Mimo wszystko trzeba wiedzieć jak to działa, bo czasem lepiej jest pominąć i użyć czegoś do specyficznego przypadku... ale to już jest wyższa szkoła jazdy. Ogólnie jak coś jest w bibliotece należy z tego korzystać. A naukę poświęcić na pisane czegoś innego (chyba że ktoś chce wchodzić w problemy algorytmiki itp. ale raczej wątpię, do tego nie ten język) -------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 04:22 |