title: PHP Class construct with three optional parameters but one required?
body: <p>So basically I understand this ...</p>
  
  <pre><code>class User
  {
      function __construct($id) {}
  }
  
  $u = new User(); // PHP would NOT allow this
  </code></pre>
  
  <p>I want to be able to do a user look up with any of the following parameters, but at least one is required, while keeping the default error handling PHP provides if no parameter is passed ...</p>
  
  <pre><code>class User
  {
      function __construct($id=FALSE,$email=FALSE,$username=FALSE) {}
  }
  
  $u = new User(); // PHP would allow this
  </code></pre>
  
  <p>Is there a way to do this?</p>