RecursiveRegexIterator
RecursiveRegexIterator::getChildren
RecursiveRegexIterator
PHP Manual

# RecursiveRegexIterator::__construct

(PHP 5 >= 5.2.0)

RecursiveRegexIterator::__construct — Crée un nouveau RecursiveRegexIterator

### Description

public RecursiveRegexIterator::__construct() ( RecursiveIterator `$iterator` , string `$regex` [, int `$mode` = self::MATCH [, int `$flags` = 0 [, int `$preg_flags` = 0 ]]] )

Crée un nouvel itérateur d'expression rationnelle.

### Liste de paramètres

`iterator`

  L'itérateur récursif sur lequel l'expression rationnelle sera appliquée.

`regex`

  L'expression rationnelle.

`mode`

  Le mode de l'opération ; voir le détail de la méthode RegexIterator::setMode() pour une liste des modes disponibles.

`flags`

  Drapeaux spéciaux ; voir le détail de la méthode RegexIterator::setFlags() pour une liste des drapeaux disponibles.

`preg_flags`

  Les drapeaux de l'expression rationnelle. Ils dépendent du mode d'opération utilisé :

  RegexIterator preg_flags
  Mode de l'opération | Drapeaux disponibles
  --- | ---
  RecursiveRegexIterator::ALL_MATCHES | Voir la fonction preg_match_all().
  RecursiveRegexIterator::GET_MATCH | Voir la fonction preg_match().
  RecursiveRegexIterator::MATCH | Voir la fonction preg_match().
  RecursiveRegexIterator::REPLACE | Aucun.
  RecursiveRegexIterator::SPLIT | Voir la fonction preg_split().

### Exemples

Exemple #1 Exemple avec RecursiveRegexIterator::__construct()

Crée un nouveau RegexIterator qui filtre toutes les chaînes qui commencent par 'test'.

`<?php
$rArrayIterator = new RecursiveArrayIterator(array('test1', array('tet3', 'test4', 'test5')));
$rRegexIterator = new RecursiveRegexIterator($rArrayIterator, '/^test/',
RecursiveRegexIterator::ALL_MATCHES);
foreach ($rRegexIterator as $key1 => $value1) {
if ($rRegexIterator->hasChildren()) {
// Affiche tous les fils
echo "Fils : ";
foreach ($rRegexIterator->getChildren() as $key => $value) {
echo $value . " ";
}
echo "\n";
} else {
echo "Aucun fils disponible\n";
}
}
?>`

L'exemple ci-dessus va afficher quelque chose de similaire à :

    Aucun fils disponible
    Fils : test4 test5

### Voir aussi

- preg_match() - Expression rationnelle standard
- preg_match_all() - Expression rationnelle globale
- preg_replace() - Rechercher et remplacer par expression rationnelle standard
- preg_split() - Éclate une chaîne par expression rationnelle

RecursiveRegexIterator
RecursiveRegexIterator::getChildren
RecursiveRegexIterator
PHP Manual