} // Determine the first part in the string reset($rules); $first_part = key($rules); // Loop through and cap-or-dont-cap foreach ($rules as $part => $rule) { if ($rule == 'caps') { // ucfirst() words and also takes into account apostrophes and hyphens like this: // ...