PHP - Ds Deque::apply() 函式



PHP 的 Ds\Deque::apply() 函式用於透過對雙端佇列中的每個值應用回撥函式來更新雙端佇列的所有值。

回撥函式必須返回一個值,以便雙端佇列的舊值將被回撥函式的返回值替換。

語法

以下是 PHP Ds\Deque::apply() 函式的語法:

public Ds\Deque::apply(callable $callback): void

引數

此函式接受一個名為“回撥”函式的單個引數,如下所述:

  • callback − 它表示應用於雙端佇列中每個值的函式。

返回值

此函式不返回任何值。

示例 1

以下程式演示了 PHP Ds\Deque::apply() 函式的用法:

<?php 
   $deque = new \Ds\Deque([1, 2, 3, 4, 5]); 
   echo("The original deque: \n"); 
   print_r($deque);
   $deque->apply(function($element) {  
      return $element * 5;  
   });  
   echo("The updated deque: \n"); 
   print_r($deque); 
?>

輸出

執行上述程式後,它顯示以下輸出:

The original deque:
Ds\Deque Object
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)
The updated deque:
Ds\Deque Object
(
    [0] => 5
    [1] => 10
    [2] => 15
    [3] => 20
    [4] => 25
)

示例 2

以下是 PHP Ds\Deque::apply() 函式的另一個示例。我們使用此函式透過應用提供的回撥函式來更新此雙端佇列 ([10, 20, 30, 40, 50, 60]) 的所有值,該回調函式返回每個元素與 10 的模:

<?php 
   $deque = new \Ds\Deque([10, 20, 30, 40, 50, 60]);  
   echo("The original deque: \n"); 
   print_r($deque);
   $deque->apply(function($element) {  
      return $element % 10;  
   }); 
   echo("The updated deque: \n"); 
   print_r($deque);
?>

輸出

上述程式產生以下輸出:

The original deque:
Ds\Deque Object
(
    [0] => 10
    [1] => 20
    [2] => 30
    [3] => 40
    [4] => 50
    [5] => 60
)
The updated deque:
Ds\Deque Object
(
    [0] => 0
    [1] => 0
    [2] => 0
    [3] => 0
    [4] => 0
    [5] => 0
)

示例 3

在下面的示例中,我們使用 apply() 函式透過使用提供的回撥函式在每個元素中新增 10 來更新此雙端佇列 ([0, 0, 0, 0]) 的元素值:

<?php 
   $deque = new \Ds\Deque([0, 0, 0, 0]);  
   echo("The original deque: \n"); 
   print_r($deque);
   $deque->apply(function($element) {  
      return $element + 10;  
   }); 
   echo("\nThe updated deque: \n"); 
   print_r($deque); 
?>

輸出

執行上述程式後,它生成以下輸出:

The original deque:
Ds\Deque Object
(
    [0] => 0
    [1] => 0
    [2] => 0
    [3] => 0
)

The updated deque:
Ds\Deque Object
(
    [0] => 10
    [1] => 10
    [2] => 10
    [3] => 10
)
php_function_reference.htm
廣告