RegexIterator::setMode
PHP function
Edit on GitHub ✎
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
Sets the operation mode
Description
RegexIterator::setMode(int $mode): void
Sets the operation mode.
Parameters
modeThe operation mode.
The available modes are listed below. The actual meanings of these modes are described in the predefined constants.
value constant 0 RegexIterator::MATCH 1 RegexIterator::GET_MATCH 2 RegexIterator::ALL_MATCHES 3 RegexIterator::SPLIT 4 RegexIterator::REPLACE
Return Values
Void
Examples
RegexIterator::setMode example
php
<?php
$test = array ('str1' => 'test 1', 'test str2' => 'another test', 'str3' => 'test 123');
$arrayIterator = new ArrayIterator($test);
// Filter everything that starts with 'test ' followed by one or more numbers.
$regexIterator = new RegexIterator($arrayIterator, '/^test (\d+)/');
// Operation mode: Replace actual value with the matches
$regexIterator->setMode(RegexIterator::GET_MATCH);
foreach ($regexIterator as $key => $value) {
// print out the matched number(s)
echo $key . ' => ' . $value[1] . PHP_EOL;
}
?>The above example will output something similar to:
output
str1 => 1
str3 => 123See Also
RegexIterator::getMode