Ds\PriorityQueue::pop

Removes and returns the value with the highest priority

Description

public mixed Ds\PriorityQueue::pop()

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

Note:

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

Parameters

This function has no parameters.

Return Values

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

Errors/Exceptions

UnderflowException if empty.

Examples

Example #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());
?>

The above example will output something similar to:

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