PHP: Kategoria poświęcona w całości technologiom server-side, a w szczególności PHP. Uwaga: starsze wpisy o tej tematyce znaleźć można także w "Programowaniu", ponieważ ta kategoria jest relatywnie nowa.
PHP: Kategoria poświęcona w całości technologiom server-side, a w szczególności PHP. Uwaga: starsze wpisy o tej tematyce znaleźć można także w "Programowaniu", ponieważ ta kategoria jest relatywnie nowa.
Wszystkie wersje PHP 5 od samego początku miały problem z wywołaniami include albo require w destruktorach. W wersji 5.0.3 prowadziło to nawet do wystąpienia "Segmentation fault". Zostało to jednak poprawione, co znaczy, że taka możliwość jest wewnątrz tych specyficznych metod dozwolona. Innym razem z kolei próba odwołania się z dołączonego pliku do pól/metod obiektu kończyła się zawieszeniem serwera. Sam na tym swego czasu poległem, pisząc OPT. Tymczasem to nie koniec problemów.
Chodzi mi po głowie pomysł na nowy silnik zawartości witryny WWW, znacznie bardziej elastyczny od przypisywania kategorii na sztywno. Dotychczasowe moje doświadczenia z projektowaniem bardziej rozbudowanych baz mówią mi, że zarządzanie nimi wymaga olbrzymiej liczby zapytań i pewności, że są one bezbłędne. Wystarczy jedna, najmniejsza pomyłka, aby powstały widoczne gołym okiem przekłamania.
Posiedziałem wczoraj nieco nad kodem i dorobiłem do biblioteki PDO cache'owanie. Działa w najlepsze, co powinno nieco ostudzić tych paru niedowiarków mówiących, że to niemożliwe. Najfajniejsze jest, że cała ta moja biblioteka ma API identyczne, jak PDO, więc przy normalnym użytkowaniu nie da się zauważyć, że większość metod pełni jedynie rolę nakładek na te właściwe tak, żeby po prostu były.
Dawno nie zaglądałem do PHP Weekly Summary na Zend.com, gdyż w tym roku jakoś kiepsko je aktualizują. Nie wiem, co to ma być, że raporty z np. sierpnia pojawiają się dopiero po trzech miesiącach, gdyż kiedy wchodziłem na stronę w wakacje, lista kończyła się gdzieś na maju. Ale zostawmy póki co w spokoju dezyderaty na temat chęci do prowadzenia tego kącika, a skupmy się na konkretach, a mianowicie na pierwszych dyskusjach o kształcie PHP 6.
Ten wpis wyjątkowo nie będzie dotyczył żadnej głupiej osoby, a całej głupiej sytuacji, jaka wynikła ze splotu kilku zdarzeń. Otóż w wakacje przyjąłem poprzez znajomego wykonanie pewnego ciekawego projektu strony WWW dla firmy z Hollywood zajmującej się wynajmem nieruchomości. Oczywiście pierwsze pytanie: jakie tam jest PHP. Odpowiedź: PHP 5.
8-go czerwca 1995 roku światło dzienne ujrzało PHP 1.0, zwane wtedy "Personal Home Page Tools" i w dodatku będące jedynie zestawem programów w C pozwalających wstawić na stronę np. licznik odwiedzin. Ciekawe, czy jego autor, Rasmus Lerdorf przewidywał, że zmieni się to niedługo (bo jeszcze w tym samym roku) w język programowania, który w następnych latach zrewolucjonizuje świat?
I znowu kolejny wpis pod rząd związany z webmasterstwem, ale co tam. Ostatnio na forum Webcity.pl wywiązała się ciekawa dyskusja o tworzeniu drzew w PHP i MySQL. Temat na forum jest stary, jak świat, a mnie tu interesuje jeno jego końcówka. Link zamieszczam w przypisach, a co i jak - już tłumaczę.
Ostatnio zastanawiałem się, jak tu zakodować w PHP i MySQL strukturę hierarchiczną (drzewiastą) tak, by nie trzeba było rekurencyjnie wywoływać zapytań. Naprawdę jest to potworna zmora programistów, gdyż język SQL w ogóle nie dostarcza żadnych narzędzi do realizacji tego typu zamiarów. Znalazłem jednak ciekawy sposób na obejście ograniczenia poprzez połączenie wszystkich węzłów swoistą drogą. Nie będę się tu jednak rozpisywał. Otóż aby metoda nie zaginęła w mroku Dzienników, wrzuciłem jej pełen opis do działu "Artykuły". Miłego czytania!
W dziale "Artykuły" zamieściłem artykuł przeznaczony dla programistów PHP i MySQL. Opisuje on tajniki konfiguracji MySQL 4.1, a konkretniej ustawień systemów kodowań i porównań tak, aby wszystko działało. Szczególnie polecam go osobom chcącym oprzeć swój serwis WWW na kodowaniu Unicode, gdyż to właśnie w oparciu o niego stworzone zostały przykłady. Wszystko oparłem o własne doświadczenia wynikłe z tworzenia Dzienników zyxowych, zatem skoro tu działa, u Was też powinno :).
Serwer WWW przechodzi od pewnego czasu renowację. Dziś pracowałem nad (mam nadzieję) jej ostatnim etapem, mianowicie przystosowywaniem webowego klienta poczty do pracy z włączonym safe mode na PHP 5. Przy okazji ostatecznie skonfigurowałem do pracy... MySQL'a 4.1 :). To zaś oznacza, że na weekendzie będę przerabiać "Zyxist online" pod tę bazę danych, gdyż obecnie śmiga ona na SQLite.