Jednak CakePHP

Chcia­łem napi­sać jakiś dłuż­szy post ale jest pią­ta rano i chy­ba nie nale­ży jed­nak prze­gi­nać z nie­spa­niem… Noc przy­naj­mniej była owoc­na, dwie kolej­ne stron­ki zamie­ni­ły się ze szki­cu w XHTML (popraw­ny !! 🙂 ). No ale nie o tym mia­ło być.

Jakiś czas temu pisa­łem o potrze­bie wybo­ru fra­me­wor­ka do PHP, byłem wte­dy zde­cy­do­wa­ny na wybór Sym­fo­ny. Jed­nak nie musia­ło minąć wie­le cza­su żeby jak zwy­kle życie zwe­ry­fi­ko­wa­ło pla­ny. Nadal uwa­żam Sym­fo­ny za jeden z naj­bar­dziej dopra­co­wa­nych fra­me­wor­ków, ale jego wyma­ga­nia skre­śla­ją­go na naszym ryn­ku. Dzie­lo­ne hosty ze sztyw­ną kon­fi­gu­ra­cją ser­we­ra po pro­stu się do tego nie nada­ją. Tak więc wró­ci­łem do pozy­cji nr 2, czy­li do Cake­PHP. Wal­czę z tym od tygo­dnia i jak na razie wszyst­ko pły­nie… (Byle nie popły­nę­ło za dale­ko). A tak poważ­nie, nie ma tylu wbu­do­wa­nych opcji co Sym­fo­ny, ale za to daje dużo więk­szą ela­stycz­ność (słyn­na kon­wen­cja nad kon­fi­gu­ra­cją). Prze­trans­fe­ro­wa­łem na Cake już dwie stro­ny i w obu przy­pad­kach budo­wa jest napraw­dę uła­twio­na.

Tak więc nadal nie wiem jak dłu­go zosta­nę przy tym sys­te­mie, jed­no wiem na pew­no – bez fra­me­wor­ku już do PHP nie pod­cho­dzę…

Framework, potrzeba czy moda?

Ule­ga­jąc kolej­nej modzie (zaraz po last.fm), zaczą­łem się inte­re­so­wać ogrom­nie mod­nym ter­mi­nem „fra­me­work”. Tro­chę z cie­ka­wo­ści, a tro­chę z potrze­by zaczą­łem szu­kać cze­goś, co przy­śpie­szy budo­wę coraz więk­szych pro­jek­tów speł­nia­jąc zara­zem wyma­ga­nia. Mimo szcze­rych chę­ci od razu zre­zy­gno­wa­łem z cool’to­wych Ruby on RailsDjan­go (nie chce mi się uczyć za dużo… zosta­je przy PHP, cho­ciaż RoR jest napraw­dę kuszą­cy). Po nie­prze­spa­nej nocy peł­nej szu­ka­nia porów­nań i opi­nii wybra­łem dwa: Cake­PHPSym­fo­ny. Są bar­dzo podob­ne, oba w peł­ni obiek­to­we, o podob­nych wła­ści­wo­ściach. Cia­cho zapo­wia­da­ło się super – dość pro­ste i do tego dzia­ła na PHP4 (tak jak mój dotych­cza­so­wy ser­wer), nie wyma­ga zbyt kło­po­tli­wych insta­la­cji, a jed­nak po dłu­gich waha­niach zde­cy­do­wa­łem się na Sym­fo­nię. Zade­cy­do­wa­ła dużo lep­sza doku­men­ta­cja i banal­ny dro­biazg – zasto­so­wa­nie moje­go ulu­bio­ne­go prototype.js, będą­ce­go nota­be­ne pod­po­rą RoR.

Dzi­siaj (o prze­pra­szam, już wczo­raj) od rana zaczą­łem wal­kę z insta­la­cją na domo­wym ser­we­rze. Na dzień dobry przy­wa­lił mnie ogrom infor­ma­cji i pli­ków kon­fi­gu­ra­cyj­nych w zwią­za­nych z każ­dym pro­jek­tem. Oj nie było łatwo, jak się zbio­rę do kupy to napi­szę o tym osob­ny arty­kuł… Sytu­ację rato­wa­ła napraw­dę nie­zła doku­men­ta­cja pro­jek­tu, o któ­rej wspo­mnia­łem wcze­śniej. War­to jedy­nie powie­dzieć, że się uda­ło i do wie­czo­ra stwo­rzy­łem pierw­szy testo­wy pro­jek­cik (wg tuto­ria­la). Jak dotąd rewe­la­cja. Spraw­nie, ele­ganc­ko, nic tyl­ko podzi­wiać. Testo­wy, w peł­ni funk­cjo­nal­ny blog powstał (pomi­ja­jąc kwe­stie kon­fi­gu­ra­cji moje­go PHP) w kil­ka­dzie­siąt minut…

Na razie wiem jed­no – zapo­wia­da się bar­dzo cie­ka­wie. Głów­ny minus całej tej ope­ra­cji to potrze­ba szu­ka­nia nowe­go hostin­gu (mój dotych­cza­so­wy nie pozwa­la na dostęp do shel­la i na indy­wi­du­al­ne usta­wie­nia PHP5). Jak wszyst­ko dobrze pój­dzie, to od jutra odpa­lam nowy ser­wer z Sym­fo­nią i ska­cze na głę­bo­ką wodę – budu­ję nową wer­sję mojej fir­mo­wej stro­ny w opar­ciu o ten fra­me­work, cie­ka­we co z tego wyj­dzie. Wte­dy dopie­ro oka­że się jak to napraw­dę jest – czy było to potrzeb­ne, czy zno­wu ule­głem modzie…

PHP 5.1.6 na serwerze Apache 2.2.3 – brakujący plik

Wła­śnie zakoń­czy­łem potycz­kę (wygra­ną !!) z insta­la­cją PHP 5 na ser­we­rze Apa­che 2.2. Niby nic szcze­gól­ne­go, ale ze wzglę­du na mały dro­biazg war­to o tym wspo­mnieć.

Po insta­la­cji (zain­sta­lo­wa­ny ser­wer i roz­pa­ko­wa­ny plik php‑5.1.6‑Win32.zip) zaczę­ły się kło­po­ty. Mimo popraw­nej kon­fi­gu­ra­cji pli­ku httpd.conf, nie­ustan­nie ser­wer wyrzu­cał mi nastę­pu­ją­cy błąd:

Cannot load C:/php/php5apache2.dll into server:Nie można odnaleĹşć określonego modułu.

Spraw­dzi­łem wszyst­kie ścież­ki, nauczy­łem się na pamięć pli­ków install.txt apa­che­’a i php’a i cią­gle nic. W inter­ne­cie też jakoś cicho na ten temat. Ale w koń­cu sie uda­ło – oka­za­ło się, że w naj­bar­dziej aktu­al­nej (ofi­cjal­nie) dys­try­bu­cji PHP (down­lo­ad na php.net) bra­ku­je pli­ku dla Apa­che 2.2 (musi byc inny niż dla 2.0, nie ma o tym wzmian­ki w doku­men­ta­cji insta­la­cji). Zamiast php5apache2.dll potrzeb­ny jest php5apache2_2.dll (i odpo­wied­nio do tego pli­ku musi się odno­sić wpis w kon­fi­gu­ra­cji Apa­che). Wer­sja PHP z bra­ku­ją­cym pli­kiem jest dostęp­na na stro­nie PHP Snap­shots.

„Cheat sheats” czyli ściągawki projektanta stron

Od dłuż­sze­go cza­su w pra­cy posłu­gi­wa­łem się róż­ne­go rodza­ju ścią­gaw­ka­mi naj­czę­ściej uży­wa­nych pro­gra­mów i skład­ni (już od szko­ły śred­niej wie­dzia­łem, że wku­wa­nie na pamięć nie jest moim ulu­bio­nym zaję­ciem :grin:). Zazwy­czaj były spi­sa­ne na jakichś skraw­kach papie­ru i poprzy­le­pia­ne naoko­ło kom­pu­te­ra. Czy­taj dalej „Che­at she­ats” czy­li ścią­gaw­ki pro­jek­tan­ta stron