# Ds\PriorityQueue::pop

(PECL ds >= 1.0.0)

Ds\PriorityQueue::pop — Removes and returns the value with the highest priority

### Descripción

public Ds\PriorityQueue::pop(): mixed

Removes and returns the value at the front of the queue, ie. the value with the highest priority.

> Nota:

> Values with equal priority fall back to FIFO (first in first out).

### Parámetros

Esta función no tiene parámetros.

### Valores devueltos

The removed value which was at the front of the queue.

### Errores/Excepciones

UnderflowException if empty.

### Ejemplos

Ejemplo #1 Ds\PriorityQueue::pop() example

`<?php
$queue = new \Ds\PriorityQueue();
$queue->push("a", 5);
$queue->push("b", 15);
$queue->push("c", 10);
print_r($queue->pop());
print_r($queue->pop());
print_r($queue->pop());
?>`

El resultado del ejemplo sería algo similar a:

    string(1) "a"
    string(1) "b"
    string(1) "c"