ugrás a tartalomhoz

getcwd() PHP4-ben és PHP5-ben

fchris82 · 2006. Aug. 28. (H), 18.41
A hétvégén a gépre felvarázsoltam az alábbi összeállítást:
Apache 2.2
PHP Version 4.4.5-dev
PHP Version 5.2.0RC3-dev

Ugyan van itt egy cikk erről a műveletről, azonban az csak Apache 2.0-ig működik. Gondolom én, mert 2.2 alatt nem működött. Az alábbi módosításokat kellett csinálnom.
php4.conf
LoadModule php4_module "d:/php4/php4apache2.dll"
AddType application/x-httpd-php .php
PHPIniDir "d:/php4"
php5.conf
LoadModule php5_module "d:/chris/php5/php5apache2_2_filter.dll"
LoadFile "d:/php5/php5ts.dll"
AddOutputFilter PHP php
PHPIniDir "d:/php5"
Ezt egy oldalon találtam, amit per pillanat most nem találok :D

A PHP4-hez le kellett töltenem egy másik php4apache2.dll-t, csak azzal volt hajlandó működni.
Ezek után nem akart működni egy Smarty-t használó oldal, mert a getcwd-re php5 alatt az apache könyvtárát adta vissza :X Találtam erről itt egy levelet:
A megoldas, ha leszeded a CVS verziot a PHP-bol. Vagy esetleg eggyel
korabbi verziot teszel fel.

Ezt nem egészen értettem, mármint a CVS verziót, az utóbbit meg igen, de php4-ből már van egy ... :) És azon tényleg működik. A dirname(__FILE__) megoldás sem akart működni. Apróbb keresgélés után rátaláltam egy másik oldalra, amin szintén a fenti beállításokat használja, de ott megemlíti azt is, hogy a php.ini fájlban töltsük ki a doc_root változót. Ezt a műveletet végrehajtva a getcwd() továbbra is az apache könyvtárát adja vissza, viszont a
dirname(__FILE__);
megoldás tökéletesen működik!

Gondoltam leírom ide, hátha vkinek jól jön még :) Ha vkinek viszont van ötlete, hogyan lehetne helyes működésre bírni a getcwd() fv php5 alatt, az kérem ossza meg velem :)