title: Does PHP have short-circuit evaluation?
body: <p>Given the following code:</p>
  
  <pre><code>if (is_valid($string) &amp;&amp; up_to_length($string) &amp;&amp; file_exists($file)) 
  {
      ......
  }
  </code></pre>
  
  <p>If <code>is_valid($string)</code> returns <code>false</code>, does the php interpreter still check later conditions, like <code>up_to_length($string)</code>?<br>
  If so, then why does it do extra work when it doesn't have to?</p>