Re: [RFC] Reclassifying engine warnings
| From: | Arvids Godjuks | Date: | Thu, 12 Sep 2019 14:06:15 +0000 |
| Subject: | Re: [RFC] Reclassifying engine warnings | ||
| References: | 1 2 3 4 5 6 7 8 9 10 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-106950@lists.php.net to get a copy of this message | ||
чт, 12 сент. 2019 г. в 16:02, Chase Peeler <chasepeeler@gmail.com>:
> On Thu, Sep 12, 2019 at 9:55 AM Claude Pache <claude.pache@gmail.com>
> wrote:
>
> >
> >
> > > Le 12 sept. 2019 à 15:33, Marco Pivetta <ocramius@gmail.com> a écrit :
> > >
> > > $foo[$key1][$key2] = ($foo[$key1][$key2] ?? 0) + 1;
> > >
> > > Marco Pivetta
> >
> > That violates blatantly DRY (twice the exact same lengthy expression
> >
$foo[$key1][$key2]), so it is not a satisfactory solution.
> >
> > And that's why PHP is so awesome. You don't have to do all these stupid
> tricks just to do something simple like increment a counter. But, it looks
> like we're going to throw that out of the window because some people think
> that since they like doing it like the way above, everyone should have to..
>
> > —Claude
> >
> >
>
> --
> Chase Peeler
> chasepeeler@gmail.com
>
Easy, because experience shows that leads to bugs and lots of them.
Security issues even.
If you want to write predictable code - you have to init your
variables/arrays. And check for existence/null. If fixed at least a few
dozen bugs in my system I took over in the last few months specifically
because of undefined variables or indexes.
It works for small stuff, but when you have a codebase with 100+k LOC and
more, you have to go strict or it starts to cost a lot of money and
personnel to keep things running along.
--
Arvīds Godjuks
+371 26 851 664
arvids.godjuks@gmail.com
Skype: psihius
Telegram: @psihius https://t.me/psihius