title: PHP convert uppercase words to lowercase, but keep ucfirst on lowercase words
body: <p><strong>An example:</strong></p>
  
  <pre><code>THIS IS A Sentence that should be TAKEN Care of
  </code></pre>
  
  <p><strong>The output should be:</strong></p>
  
  <pre><code>This is a Sentence that should be taken Care of
  </code></pre>
  
  <p><strong>Rules</strong></p>
  
  <ul>
  <li>Convert UPPERCASE words to lowercase</li>
  <li>Keep the lowercase words with an uppercase first character intact</li>
  <li>Set the first character in the sentence to uppercase.</li>
  </ul>
  
  <p><strong>Code</strong></p>
  
  <pre><code>$string = ucfirst(strtolower($string));
  </code></pre>
  
  <p><strong>Fails</strong></p>
  
  <p>It fails because the ucfirst words are not being kept.</p>
  
  <pre><code>This is a sentence that should be taken care of
  </code></pre>