Examples of where I've started migrating to short-circuit evaluation:PHP$id=0;//initialized in case of no result$r=mysql_query(SQL);if($r && mysql_num_rows($r)>0){  list($id)=mysql_fetch_row($r);}becomes$id=0;$r=mysql_query(SQL);$r && mysql_num_rows($r)>0 && list($id)=mysql_fetch_row($r);JavaScriptvar Req=jQuery.ajax(OBJECT);//Something has happened and now i want to abort if possibleif(Req && Req.abort){  Req.abort();}becomesvar Req=jQuery.ajax(OBJECT);//Something has happened and now i want to abort if possibleReq && Req.abort && Req.abort();I'm familiar with the short if style of if(Req && Req.abort) Req.abort();but it feels clunkier than short-circuit evaluation.
Relying on short-circuit evaluation instead of using the IF control structure
javascript;php
This is an abuse of short-circuit evaluation.  It's not immediately obvious what the intent is.  Sure, i can eventually see that you're getting an ID, calling Req.abort(), whatever.  But i shouldn't have to decipher a line of code first to figure out what it does.Conciseness never trumps readability in source code.  (Sure, minifying/packing JS has its benefits.  But you don't write packed/minified code; you start out with decent code and then run a tool on it.)Since your intent is to do the one thing if the other stuff is true, the code should say that.