## New Classes

The following classes were introduced in PHP 5.2.0:

- DateTime
- DateTimeZone
- RegexIterator - extends FilterIterator; implements Iterator, Traversable, OuterIterator Constants:
  - `RegexIterator::ALL_MATCHES`
  - `RegexIterator::GET_MATCH`
  - `RegexIterator::MATCH`
  - `RegexIterator::REPLACE`
  - `RegexIterator::SPLIT`
  - `RegexIterator::USE_KEY`
  Properties:
  - public replacement
  Methods:
  - RegexIterator::__construct(Iterator it, string regex [, int mode [, int flags [, int preg_flags]]]) - Create an `RegexIterator` from another iterator and a regular expression
  - bool RegexIterator::accept() - Match (string)current() against regular expression
  - bool RegexIterator::getFlags() - Returns current operation flags
  - bool RegexIterator::getMode() - Returns current operation mode
  - bool RegexIterator::getPregFlags() - Returns current PREG flags (if in use or `NULL`)
  - bool RegexIterator::setFlags(int new_flags) - Set operation flags
  - bool RegexIterator::setMode(int new_mode) - Set new operation mode
  - bool RegexIterator::setPregFlags(int new_flags) - Set PREG flags
- RecursiveRegexIterator Constants:
  - `RecursiveRegexIterator::ALL_MATCHES`
  - `RecursiveRegexIterator::GET_MATCH`
  - `RecursiveRegexIterator::MATCH`
  - `RecursiveRegexIterator::REPLACE`
  - `RecursiveRegexIterator::SPLIT`
  - `RecursiveRegexIterator::USE_KEY`
  Methods:
  - RecursiveRegexIterator::__construct(RecursiveIterator it, string regex [, int mode [, int flags [, int preg_flags]]]) - Create an `RecursiveRegexIterator` from another recursive iterator and a regular expression
  - RecursiveRegexIterator RecursiveRegexIterator::getChildren() - Return the inner iterator's children contained in a `RecursiveRegexIterator`
  - bool RecursiveRegexIterator::hasChildren() - Check whether the inner iterator's current element has children