Why do PHP's built in functions use constants instead of just strings as parameters?
<p>I noticed that PHP's internal functions never use strings for pre-defined or limited values, only constants.</p>

<p><a href="http://hu2.php.net/manual/en/function.str-pad.php">For example</a>:</p>

<blockquote>
  <p><strong>pad_type</strong>:</p>
  
  <p>Optional argument pad_type can be STR_PAD_RIGHT, STR_PAD_LEFT, or STR_PAD_BOTH. If pad_type is not specified it is assumed to be STR_PAD_RIGHT.</p>
</blockquote>

<p>What's the reason for not using a string as parameter here?</p>

<p><code>str_pad($test, 10, 0, 'left')</code> seems a lot simpler than <code>str_pad( $test, 10, 0, STR_PAD_LEFT)</code></p>

<p>(This is more of a meta question. I hope it's OK to ask here.)</p>
