Abuse Melding

Je hebt een klacht over de onderstaande posting:

19-04-2018, 11:12 door Krakatau

Door didrix: Voor iedereen die zegt dat php niet het probleem is: <?php $user_is_admin = 0; $user_is_owner = 1; $has_permission_1 = $user_is_admin || $user_is_owner; $has_permission_2 = $user_is_admin or $user_is_owner; ?> Wat is de juiste manier om dit te doen? Lijkt het zelfde, niet? Volgens de documentatie zou het hetzelfde moeten zijn. http://php.net/manual/en/language.operators.logical.php. En toch is het niet hetzelfde. Het verschil zit 'm in de operator precedence (staat ook in de documentatie The reason for the two different variations of "and" and "or" operators is that they operate at different precedences.). De or heeft een lagere precedence dan de = operator (waardoor de assignment aan $has_permission_2 vóór de or plaatsvindt - en de rest van de regel zinloos is en gewoon verdwijnt). Waarom je dat überhaupt zou willen en waarom er meerdere varianten van logical ands en ors in je programmeertaal zouden moeten zitten? Dat geeft het probleem weer met PHP: het is een bij elkaar geraapt ...

Beschrijf je klacht (Optioneel):

captcha