in reply to Re: IIS doesn't like my require statement
in thread IIS doesn't like my require statement

Ack! Using \ instead of / will not work!

"..\configure.pl" will be interpreted by Perl as "..nfigure.pl". Double quoted literal paths in Perl are never separated by just "\" even on Win32, even under IIS.

Update: I just knew I was going to be corrected. Lesson learned. Never say never. Or at least be very specific.

--
Grant me the wisdom to shut my mouth when I don't know what I'm talking about.

Replies are listed 'Best First'.
Re: Re^2: IIS doesn't like my require statement
by IlyaM (Parson) on Jan 28, 2003 at 08:51 UTC
    You can use both / and \ as a path separator in Perl programs on Win32. The only important thing to remember is that in string literals \ char has special meaning (it is an escape char) and it must be doubled to get single \ char. I.e
    # ok my $path = "dir/file.txt"; # not ok my $path = "dir\file.txt"; # ok my $path = "dir\\file.txt"; # also ok - in single quoted strings only sequences \' and \\ are spec +ial my $path = 'dir\file.txt';
    Of course it is Win32 specific and it is just easier to always use / as a path separator what is more portable. Or even use File::Spec what is the most portable way to create filepaths from components:
    use File::Spec; my $path = File::Spec->catfile(qw(dir file.txt));

    Update: Fixed mismatched quotes. Thanks to Ionizor who noticed it.

    --
    Ilya Martynov, ilya@iponweb.net
    CTO IPonWEB (UK) Ltd
    Quality Perl Programming and Unix Support UK managed @ offshore prices - http://www.iponweb.net
    Personal website - http://martynov.org