CakeFest 2024: The Official CakePHP Conference

RegexIterator::setMode

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

RegexIterator::setModeSets the operation mode

Description

public RegexIterator::setMode(int $mode): void

Sets the operation mode.

Parameters

mode

The operation mode.

The available modes are listed below. The actual meanings of these modes are described in the predefined constants.

RegexIterator modes
value constant
0 RegexIterator::MATCH
1 RegexIterator::GET_MATCH
2 RegexIterator::ALL_MATCHES
3 RegexIterator::SPLIT
4 RegexIterator::REPLACE

Return Values

No value is returned.

Examples

Example #1 RegexIterator::setMode() example

<?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:

str1 => 1
str3 => 123

See Also

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top