#40296 [NEW]: "unless" control structure
From: mail at tobyinkster dot co dot uk
Operating system: All
PHP version: 5.2.0
PHP Bug Type: Feature/Change Request
Bug description: "unless" control structure
Description:
------------
It would be nice if PHP had an "unless" control structure so that:
unless (...) { ... }
would be equivalent to:
if (!(...)) { ... }
Although the "unless" control structure is actually slightly more verbose
(in bytes) than "if", it is arguably a lot more readable in the following
examples:
unless ($a==0 || $b==0)
divide_by($a*$b);
versus:
if (!($a==0 || $b==0))
divide_by($a*$b);
or, equivalently using De Morgan's Law (Google for it):
if ($a!=0 && $b!=0)
divide_by($a*$b);
The "unless" structure uses less punctuation, and more human syntax. I
can't imagine how this extra syntax would break any existing scripts.
For what it's worth, Perl already has an "unless" control structure.
--
Edit bug report at http://bugs.php.net/?id=40296&edit=1
--
Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=40296&r=trysnapshot44
Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=40296&r=trysnapshot52
Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=40296&r=trysnapshot60
Fixed in CVS: http://bugs.php.net/fix.php?id=40296&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=40296&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=40296&r=needtrace
Need Reproduce Script: http://bugs.php.net/fix.php?id=40296&r=needscript
Try newer version: http://bugs.php.net/fix.php?id=40296&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=40296&r=support
Expected behavior: http://bugs.php.net/fix.php?id=40296&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=40296&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=40296&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=40296&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=40296&r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=40296&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=40296&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=40296&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=40296&r=float
No Zend Extensions: http://bugs.php.net/fix.php?id=40296&r=nozend
MySQL Configuration Error: http://bugs.php.net/fix.php?id=40296&r=mysqlcfg
Thread (19 messages)
- mail at tobyinkster dot co dot uk
- michael at chunkycow dot com dot au#40296 [Com]: "unless" control structure
- mattr dot smith at gmail dot comReq #40296 [Com]: "unless" control structure
- achaia3 at gmail dot comReq #40296 [Com]: "unless" control structure
- joke at nakhon dot netReq #40296 [Com]: "unless" control structure
- email at philsturgeon dot co dot ukReq #40296 [Com]: "unless" control structure
- rasmus@php.netReq #40296 [Opn->Wfx]: "unless" control structure
- email at philsturgeon dot co dot ukReq #40296 [Com]: "unless" control structure
- hi at brennannovak dot comReq #40296 [Com]: "unless" control structure
- kinghfb+php at gmail dot comReq #40296 [Com]: "unless" control structure
- email at philsturgeon dot co dot ukReq #40296 [Com]: "unless" control structure
- mail at tobyinkster dot co dot ukReq #40296 [Wfx]: "unless" control structure
- rasmus@php.netReq #40296 [Wfx]: "unless" control structure
- email at philsturgeon dot co dot ukReq #40296 [Com]: "unless" control structure
- email at philsturgeon dot co dot ukReq #40296 [Com]: "unless" control structure
- freshtuneage at gmail dot comReq #40296 [Com]: "unless" control structure
- charlie at gorichanaz dot comReq #40296 [Com]: "unless" control structure
- craig at clearbooks dot co dot ukReq #40296 [Com]: "unless" control structure
- David at Refoua dot meReq #40296 [Com]: "unless" control structure