At 19:38 23.04.2002, Perrin Harkins wrote:
>Issac Goldstand wrote:
>>Reposting a question (and the answer) that geoff and I discussed in the 
>>IRC room, as I think it's worthwhile to mention...
>>I had the following line of code (actually many of the sort):
>>$r->custom_response(FORBIDDEN=>"File size exceeds quota.");
>>And kept getting errors like:
>>[Tue Apr 23 19:46:14 2002] null: Argument "FORBIDDEN" isn't numeric in 
>>subroutine entry at /usr/local/httpd/lib/perl/Mine/Pic/Application.pm 
>>line 1343.
>>The answer to the problem is that by using '=>' instead of ',', I was 
>>making 'FORBIDDEN' become '"FORBIDDEN"' (string instead of numeric 403).
>>Moral of the story: don't use => with Apache::Constants!
>
>In fact, don't use constants at all.  At least not the kind created by the 
>"use constants" pragma and similar tricks.  They have all kinds of 
>problems like this.  Use package variables instead ($FORBIDDEN).  Maybe 
>some day Perl will have real constants, but I'm perfectly happy with 
>package variables in the meantime.

Well, this one is exported by Apache::Constants, so if you don't want to do
$FORBIDDEN = FORBIDDEN;
somewhere at the top of your code, you're bound to continue using 
constants, right?


-- 
Per Einar Ellefsen
[EMAIL PROTECTED]


Reply via email to