Just a comment or thought on Jason's reply. I thought you could use '/' as the
seperator and the
PHP engine would figure out based on the run-time OS what the actual path format would
be. Hence
you can use actual path names like;
E:/path1/path2/path3/somefile.php
in your include and require statements.
At least my code uses the '/' on these types of paths and works fine on Windows and
*nix systems.
IIS and Apache both.
FPM
--- Jason Barnett <[EMAIL PROTECTED]> wrote:
> I've run into this exact problem many times. Two things:
>
> 1) use the PEAR constant DIRECTORY_SEPERATOR, or define it yourself
> if (PHP_OS == 'Win32' || PHP_OS == 'WinNT') {
> define('DIRECTORY_SEPERATOR', '\');
> } else {
> define('DIRECTORY_SEPERATOR', '/');
> }
>
> 2) I have two ways that I solve the relative include problem.
> a) include_once dirname(__FILE__) . 'path/to/relative/include.php';
>
> or for class libraries
>
> b) function __autoload($class) {
> // Use your own logic, I have mine defined to do PEAR-like loading
> $file = str_replace('_', DIRECTORY_SEPERATOR, $class);
> include_once($file . '.php');
> }
>
> >
> > As that would mean the macro code would not slow the linux
> > machine down at all when running the php script if it did
> > not even have to evaluate to see if it did need to run the
> > macro function, although I know php is a scripted language
> > and not compiled like C/C++ so I don't think its possible
>
> Note: PHP goes through the compile step, it's just that everything is compiled
> on demand.
>
> --
> PHP Windows Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php