PHP - Ds Vector::pop() 函数



PHP 的 Ds\Sequence::pop() 函数用于从向量中移除最后一个值,并返回移除的值。

此函数会影响原始向量,这意味着如果您尝试在调用 pop() 函数后打印向量,则向量中将不再包含最后一个元素。

如果当前向量为空 ([]),则会抛出 UnderflowException 异常。

语法

以下是 PHP Ds\Sequence::pop() 函数的语法:

public Ds\Vector::pop(): mixed

参数

此函数不接受任何参数。

返回值

此函数返回移除的最后一个值。

示例 1

以下程序演示了 PHP Ds\Sequence::pop() 函数的使用:

<?php 
   $vector = new \Ds\Vector([10, 20, 30, 40, 50]);
   echo("The original vector elements: \n"); 
   print_r($vector);
   echo("The last element in vector is: ");
   print_r($vector->pop()); 
?>

输出

上述程序产生以下输出:

The original vector elements:
Ds\Vector Object
(
    [0] => 10
    [1] => 20
    [2] => 30
    [3] => 40
    [4] => 50
)
The last element in vector is: 50

示例 2

以下是 PHP Ds\Sequence::pop() 函数的另一个示例。我们使用此函数来移除并检索此向量的最后一个值(["Tutorials", "Point", "India"]):

<?php 
   $vector = new \Ds\Vector(["Tutorials", "Point", "India"]);
   echo "The vector elements are: \n";
   print_r($vector);
   echo "The removed last element in vector: ";
   print_r($vector->pop());
   echo "\nThe updated vector is: \n";
   print_r($vector);
?>

输出

执行上述程序后,将显示以下输出:

The vector elements are:
Ds\Vector Object
(
    [0] => Tutorials
    [1] => Point
    [2] => India
)
The removed last element in vector: India
The updated vector is:
Ds\Vector Object
(
    [0] => Tutorials
    [1] => Point
)

示例 3

如果当前向量为空 ([]),则 pop() 函数将抛出“UnderflowException”异常:

<?php 
   $vector = new \Ds\Vector([]);
   echo "The vector elements are: \n";
   print_r($vector);
   echo "The removed last element in vector: ";
   print_r($vector->pop());
   echo "\nThe updated vector is: \n";
   print_r($vector);
?>

输出

执行上述程序后,将抛出以下异常:

The vector elements are:
Ds\Vector Object
(
)
The removed last element in vector: PHP Fatal error:
Uncaught UnderflowException: Unexpected empty state in C:\Apache24\htdocs\index.php:6
Stack trace:
#0 C:\Apache24\htdocs\index.php(6): Ds\Vector->pop()
#1 {main}
  thrown in C:\Apache24\htdocs\index.php on line 6
php_function_reference.htm
广告