[PHP] Gdzie szukac "posegregowanych funkcji"

Języki, których efekty są wykonywane po stronie serwera. PHP, ASP czy CGI w połączeniu z bazami danych SQL dają niezwykłe możliwości budowy i zarządzania stron WWW. Tu zadajemy pytania oraz demonstrujemy kod, z którym mamy problem.
new_account
Posty: 5
Rejestracja: wt paź 07, 2008 4:22 pm

[PHP] Gdzie szukac "posegregowanych funkcji"

Post autor: new_account »

Witam. Zanim wszedlem na to podforum zobaczylem temat "Usprawniamy funkcje date()". Do czego zmierzam...

Interesuja mnie jakies strony gdzie mozna znalezc garsc przydatnych funkcji - takich nad ktorymi ktos juz sie glowil i je poudostepnial. Podaje przyklady(bo takie cos samemu moge sobie napisac badz znalezc): sprawdzenie poprawnosci email, odczyt co drugiej linijki pliku tekstowego itp.
Chodzi mi o cos takiego, zeby bylo to w miare posortowane kolejno: dzial email, dzial files. W manualu sa wszystkie "wbudowane" funkcje, ale posegregowane wylacznie alfabetycznie i jest to wylacznie garstka tylko tych standardowych.

Sa jakies takie strony, dokumentacje?
SzamanGN
Nowy
Nowy
Posty: 92
Rejestracja: pn lis 27, 2006 3:28 pm
Kontakt:

Re: [PHP] Gdzie szukac "posegregowanych funkcji"

Post autor: SzamanGN »

Witam.
Nie wiem, czy wiesz co to jest programowanie obiektowe, ale możesz sprawdzić stronę: http://www.phpclasses.org/.
Mam nadzieję, że to zmieni twoje zainteresowanie funkcjami i przejdziesz na wyższy poziom (klasy).

Pozdrawiam
new_account
Posty: 5
Rejestracja: wt paź 07, 2008 4:22 pm

Re: [PHP] Gdzie szukac "posegregowanych funkcji"

Post autor: new_account »

Hmm w sumie to znam cala mechanike obiektowosci z nauki c++(jeden dwusemestralny algorytmiczny przedmiot na uczelni), ale nigdy nie wiedzialem jak sie tego uzywa. Nie mialem praktyki. Kupilem sobie ksiazke "Zaawansowane programowanie w php" i po kilkudziesieciu stronach mysle sobie - tak wlasnie tego szukalem co mi dales. Takich gotowych rozwiazan. Od razu stwierdzilem - bazy danych mysql... dla mnie to troche narazie meka. Napewno na tej stronie cos znajde i znalezlem :)

Zeby nie zakladac nowego tematu. Znam podstawy php. Jade obiektowosc. Zamierzam jeszcze sie podszkolic w bazach danych i chce sobie jeszcze kupic pozycje z helionu pt:"PHP i MySQL. Tworzenie sklepów internetowych. Wydanie II". Chce na podstawie tej ksiazki napisac swoj projekcik. W miedzyczasie zamierzam sie podszkolic w CSS, javascript, na koncu AJAX itp...

Moje pytanie brzmi. Jakie znacie najlepsze pomysly na podszkolenie swoich umiejetnosci we wlasnym zakresie? Jakies ksiazki? Wiem, ze najlepiej by bylo gdybym praktykowal, pisal duzo kodu i tak bede robic, ale moze polecicie jakies sposoby takowej praktyki w zaciszu domowym. Chodzi rowniez o lepsze zmotywowanie - Zawsze lepiej sie uczy, gdy mamy nad soba bata :)))
gorylek
Zaczyna działać
Zaczyna działać
Posty: 427
Rejestracja: śr gru 19, 2007 7:29 pm

Re: [PHP] Gdzie szukac "posegregowanych funkcji"

Post autor: gorylek »

Interesuja mnie jakies strony gdzie mozna znalezc garsc przydatnych funkcji - takich nad ktorymi ktos juz sie glowil i je poudostepnial. Podaje przyklady(bo takie cos samemu moge sobie napisac badz znalezc): sprawdzenie poprawnosci email, odczyt co drugiej linijki pliku tekstowego itp.
Taką stroną jest google. Znajdziesz tam wszystko czego trzeba. Poszukaj również w FAQ na webhelp gdzie akurat wiele rzeczy zostało poruszonych (jak to sprawdzanie poprawności e-mail).
Chodzi mi o cos takiego, zeby bylo to w miare posortowane kolejno: dzial email, dzial files.
No to musiał byś taką zrobić :P Ja takiej nie znam i nigdy nie była mi potrzebna. Troszkę praktyki i takie rzeczy to jest kilka sekund potrzebnych na napisanie odpowiedniej linijki kodu.
W manualu sa wszystkie "wbudowane" funkcje, ale posegregowane wylacznie alfabetycznie i jest to wylacznie garstka tylko tych standardowych.
No to teraz przywaliłeś z grubej rury :-D Może uświadomię Cie:
Sa jakies takie strony, dokumentacje?
MANUAL == DOKUMENTACJA :-D i na http://php.net/ jest WSZYSTKO. I jeżeli na prawdę chcesz zacząć programować w jakimkolwiek języku to przygotuj się na częste zaglądanie do manuala.
Mam nadzieję, że to zmieni twoje zainteresowanie funkcjami i przejdziesz na wyższy poziom (klasy).
Po pierwsze SzamanGN nie mam bladego pojęcia o czym mówisz. Metoda klasy to nadal funkcja. Poza tym klasy to nie wyższy poziom a inne rozwiązanie. Jeżeli ktoś chce ode mnie funkcje która sprawdzi e-mail to napiszę mu funkcje. Na cholerę mi klasa z jedną funkcją ? Jeżeli będzie trzeba sprawdzić nick, email, hasło, gg itp to już można pokusić się o klasę. Nie goń za nowinkami bo czasami starsze rozwiązania są lepsze (przykład C++ gdzie w niektórych źródłach znajduje wstawki z asemblera tylko dlatego że w tym wypadku jest po prostu szybszy).

Dla mnie klasa to odmienny sposób zarządzania kodem który genialnie się sprawdza w większych projektach a z pomocą klas abstrakcyjnych oraz interfejsów świetnie nadaje się do pracy w grupie.
Hmm w sumie to znam cala mechanike obiektowosci z nauki c++(jeden dwusemestralny algorytmiczny przedmiot na uczelni), ale nigdy nie wiedzialem jak sie tego uzywa.
Z własnego doświadczenia wiem że poziom nauczania programowania na publicznych uczelniach na ogół jest żenujący. Głównie za sprawą tego że trwa on góra 1-2 semestry i idzie z materiałem od początku. Wychodząc z uczelni czeka Cie wtedy masa pracy zanim będziesz mógł efektywnie pracować w danym języku.
Takich gotowych rozwiazan. Od razu stwierdzilem - bazy danych mysql... dla mnie to troche narazie meka. Napewno na tej stronie cos znajde i znalezlem Smile
Programowanie jest rozwiązywaniem problemów. Przykładowo chcąc co 2 linijkę tekstu trzeba się zastanowić jak to osiągnąć. Przykładem rozwiązania może być pobranie tekstu do zmiennej. Jak wiesz, każda linijka tekstu kończy się \n lub \n\r (znak nowej linii i powrót karetki). \n występuje zawsze więc można użyć funkcje explode by rozdzielić ciąg a następnie wypisać pętlą co drugi element tablicy.
:"PHP i MySQL. Tworzenie sklepów internetowych. Wydanie II". Chce na podstawie tej ksiazki napisac swoj projekcik. W miedzyczasie zamierzam sie podszkolic w CSS, javascript, na koncu AJAX itp...
Na początek polecał bym PHP i mySQL - Tworzenie stron WWW. (teraz w jakiejś promocji jest chyba). Świetna książka na start. Później to już jak Ci pasuje.
Moje pytanie brzmi. Jakie znacie najlepsze pomysly na podszkolenie swoich umiejetnosci we wlasnym zakresie? Jakies ksiazki? Wiem, ze najlepiej by bylo gdybym praktykowal, pisal duzo kodu i tak bede robic, ale moze polecicie jakies sposoby takowej praktyki w zaciszu domowym.
Pisz dużo kodu. Narzucaj sobie problemy i staraj się je rozwiązać. Wchodź na takie fora, czytaj problemy innych i staraj się je rozwiązać. Książka to tylko dodatek, mało Ci zostanie po np 900 stronach książki którą Ci poleciłem jeżeli nie będziesz w trakcie jej studiowania próbował, bawił się, eksperymentował.
Chodzi rowniez o lepsze zmotywowanie - Zawsze lepiej sie uczy, gdy mamy nad soba bata Smile))
No więc kup sobie tego bata, powieś nad krzesłem i powodzenia.
Pozdrawiam
Ostatnio zmieniony pt paź 10, 2008 7:46 am przez gorylek, łącznie zmieniany 1 raz.
new_account
Posty: 5
Rejestracja: wt paź 07, 2008 4:22 pm

Re: [PHP] Gdzie szukac "posegregowanych funkcji"

Post autor: new_account »

Heh no ja o tym wszystkim wiem co pisales ;). Nie wiem czemu, ale doskonale zdaje sobie sprawe z tego wszystkiego. A ta ksiazeczke o ktorej pisales mam w malym paluszku :). Po prostu malo mi po niej. Mam ochote poznawac jak sie tworzy profesjonalne oprogramowanie przez duze P. Dlatego stawiam wylacznie na obiektowosc, troche na inzynierie oprogramowania(tez UML), ale pod katem www. Zeby nie bylo - znam wartosc dokumentacji i wiem, ze manual na php.net.pl jest dokumentacja.... Pozdro!

I chcialem wlasnie zapytac co teraz? :). Ale byc moze moje pytanie nie znajdzie odpowiedzi :) A temat zalozylem, bo chcialem po prostu dowiedziec sie, gdzie mozna szukac [gotowych rozwiazan] w celu skonfrontowania z moimi wlasnymi.

Temat do zamkniecia.
gorylek
Zaczyna działać
Zaczyna działać
Posty: 427
Rejestracja: śr gru 19, 2007 7:29 pm

Re: [PHP] Gdzie szukac "posegregowanych funkcji"

Post autor: gorylek »

No w skrócie to ściągnij sobie jakiś obiektowo napisany CMS lub forum (w sumie które też CMS'em jest).
Przykładem jest http://tribiq.com/. Nie znam tego skryptu, tak o go wykopałem w sieci. Ściągasz i podglądasz źródło. Skrypty forum jak vBulletin czy IPB itp itd. Nie wiem które z tych skryptów są pisane obiektowo bo się specjalnie nimi nie zajmowałem.
Poza tym nie wiem jak wydanie trzecie tej książki ale moje wydanie 2 ma troszkę przestarzałe niektóre techniki (bodajże chyba użyta tam była funkcja eregi do czegoś kiedy od dawna jest ona uznawana za śmieć i trzymana tylko po to by działały stare skrypty).

No i nie myśl że Profesjonalne rozwiązania to jakaś magia. I nie sugeruj się czyjąś pracą chyba że to ktoś na prawdę uznany. Przykładem może być porada na jednym forum dotycząca przeszukiwania ciągu i powiadamiania czy istnieje w nim to czego szukamy.
Klient dostał skrypt który mnie przyprawiał o oczopląsy i miał dobrych kilka linijek kiedy to samo zmieściłem w 3 linijkach (gdzie jedna instrukcja u mnie to jedna linijka na ogół).

No i jak mówię, wiesz czym jest obiektowość, co nieco już wiesz po książce o której pisałem. Kombinuj i wypracowuj najlepszą metodę pisania dla siebie oraz podglądaj prace innych. Ściągaj CMS'y (najlepiej te świeże), patrz jakie porady w dziale PHP dają ludzie na różnych forach i podchodź sceptycznie do tych porad zastanawiając się czy można to zrobić lepiej.
Szybko przekonasz się że nie ma żadnej magii i to co widzisz jest dla Ciebie zrozumiałe.

No i nie myśl że jak firma tworzy CMS to jest profesjonalna. Ostatnio czytałem artykuł o firmie która sprzedawała swój CMS który był podatny na SQL Injection... w oknie logowania :-D Parodia jak dla mnie :-D Mało tego, ktoś sprawdził tego CMS'a od tak z ciekawości i powiadomił firmę i klientów o luce. Trafił za kratki. Całe szczęście prawo polskie nie jest jeszcze tak bardzo zepsute i uniewinniono go.

Ogólnie. Najwięcej nauczy Cie doświadczenie także pisz, pisz, pisz i rób sobie przerwy na prywatne życie :-)
ODPOWIEDZ