iterator_apply()function 是 PHP 中的内置函数,用于将用户定义的回调函数应用于迭代器的每个元素。它允许您迭代任何元素而不使用任何类型的循环。
用法:
int iterator_apply(
Traversable $iterator,
callable $callback,
?array $args = nul
l): int
参数:该函数接受下面说明的三个参数。
- $iterator: 将应用回调函数的迭代器
- $funtion: 这是回调函数。也就是调用每一个元素。必须返回‘true’以供进一步调用。
- $args: 参数数组;的每个元素
args
被传递给回调callback
作为一个单独的参数。
返回值: iterator_apply()函数返回迭代器元素。
程序1:下面的程序演示了iterator_apply()函数。
PHP
<?php
function check_for_a(Iterator $iterator) {
$element = $iterator->current();
if (stripos($element, 'a') !== false) {
echo "Element '$element' " .
"contains the letter 'a'.\n";
} else {
echo "Element '$element' " .
"does not contain the letter 'a'.\n";
}
return TRUE;
}
$fruits = array(
"Orange",
"Banana",
"Grapes",
"Kiwi"
);
$arrIter = new ArrayIterator($fruits);
iterator_apply($arrIter,
"check_for_a", array($arrIter));
?>
输出
Element 'Orange' contains the letter 'a'. Element 'Banana' contains the letter 'a'. Element 'Grapes' contains the letter 'a'. Element 'Kiwi' does not contain the letter 'a'.
程序2:下面的程序演示了iterator_apply()函数。
PHP
<?php
function print_positive_integers(Iterator $iterator) {
$element = $iterator->current();
if (is_int($element) && $element > 0) {
echo "Positive Integer: $element\n";
}
return TRUE;
}
$arr = array(10, -5, 20, -15, 30, 0, 25, -8, 40);
$arrIter = new ArrayIterator($arr);
iterator_apply(
$arrIter,
"print_positive_integers",
array($arrIter)
);
?>
输出
Positive Integer: 10 Positive Integer: 20 Positive Integer: 30 Positive Integer: 25 Positive Integer: 40
参考:https://www.php.net/manual/en/function.iterator-apply.php
相关用法
- PHP iterator_to_array()用法及代码示例
- PHP is_finite()用法及代码示例
- PHP is_infinite()用法及代码示例
- PHP is_nan()用法及代码示例
- PHP is_file()用法及代码示例
- PHP is_uploaded_file()用法及代码示例
- PHP interface_exists()用法及代码示例
- PHP is_subclass_of()用法及代码示例
- PHP imap_8bit()用法及代码示例
- PHP imap_alerts()用法及代码示例
- PHP imap_append()用法及代码示例
- PHP imap_base64()用法及代码示例
- PHP imap_binary()用法及代码示例
- PHP imap_body()用法及代码示例
- PHP imap_bodystruct()用法及代码示例
- PHP imap_check()用法及代码示例
- PHP imap_clearflag_full()用法及代码示例
- PHP imap_close()用法及代码示例
- PHP imap_create()用法及代码示例
- PHP imap_createmailbox()用法及代码示例
- PHP imap_delete()用法及代码示例
- PHP imap_deletemailbox()用法及代码示例
- PHP imap_errors()用法及代码示例
- PHP imap_expunge()用法及代码示例
- PHP imap_fetch_overview()用法及代码示例
注:本文由纯净天空筛选整理自neeraj3304大神的英文原创作品 PHP iterator_apply() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。