Hello, monks,

I'm working on a web application that is getting bigger and bigger all the time. I'm running it on Apache web server. I have the -w switch turned on. However, my Apache error.log file is filled with hundreds of messages of this sort: Use of uninitialized value in concatenation (.) or string etc This means that some of my variables are undef ined when I'm using them. To avoid these warnings I'd have to set if(defined($something)) statements in my code. But I don't want to make my code more complicated to read. So the question is: what is best to choose, turn off the -w option, do variable check in the code, divide/structure the code or is there another way of doing this? How to find a balance between strictness and over-complication of the code?

Thank you.


In reply to The -w switch on a web application by Heidegger

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.