Stdlib/SplPriorityQueue.php
Zend Framework
LICENSE
This source file is subject to the new BSD license that is bundled
with this package in the file LICENSE.txt.
It is also available through the world-wide-web at this URL:
http://framework.zend.com/license/new-bsd
If you did not receive a copy of the license and are unable to
obtain it through the world-wide-web, please send an email
to license@zend.com so we can send you a copy immediately.
- Category
- Zend
- Copyright
- Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Package
- Zend_Stdlib
\SplPriorityQueue
Package: Zend_Stdlib
Returns
SplPriorityQueue
PHP 5.2.X userland implementation of PHP's SplPriorityQueue
- Implements
- Children
- \Zend_Stdlib_SplPriorityQueue
Constants
Properties
int $extractFlags = self::EXTR_DATA
Flag indicating what should be returned when iterating or extracting
Default value
self::EXTR_DATA
Details- Type
- int
Methods
compare(mixed $priority1, mixed $priority2) : int
Compare two priorities
Returns positive integer if $priority1 is greater than $priority2, 0
if equal, negative otherwise.
Unused internally, and only included in order to retain the same
interface as PHP's SplPriorityQueue.
ParametersName | Type | Description |
---|---|---|
$priority1 | mixed | |
$priority2 | mixed |
Type | Description |
---|---|
int |
extract() : \mixed;
Extract a node from top of the heap and sift up
Returns either the value, the priority, or both, depending on the extract flag.
ReturnsType | Description |
---|---|
\mixed; |
insert(mixed $value, mixed $priority) : void
Insert a value into the heap, at the specified priority
Parameters
Name | Type | Description |
---|---|---|
$value | mixed | |
$priority | mixed |
recoverFromCorruption() : void
Recover from corrupted state and allow further actions on the queue
Unimplemented, and only included in order to retain the same interface as PHP's
SplPriorityQueue.
setExtractFlags(int $flags) : void
Set the extract flags
Defines what is extracted by SplPriorityQueue::current(),
SplPriorityQueue::top() and SplPriorityQueue::extract().
- SplPriorityQueue::EXTR_DATA (0x00000001): Extract the data
- SplPriorityQueue::EXTR_PRIORITY (0x00000002): Extract the priority
- SplPriorityQueue::EXTR_BOTH (0x00000003): Extract an array containing both
The default mode is SplPriorityQueue::EXTR_DATA.
ParametersName | Type | Description |
---|---|---|
$flags | int |
top() : mixed
Return the value or priority (or both) of the top node, depending on the extract flag
Returns
Type | Description |
---|---|
mixed |
\Zend_Stdlib_SplPriorityQueue
Package: Zend_Stdlib
Serializable version of SplPriorityQueue
Also, provides predictable heap order for datums added with the same priority
(i.e., they will be emitted in the same order they are enqueued).
- Implements
- Parent(s)
- \SplPriorityQueue
- Children
- \Zend_EventManager_Filter_FilterIterator
- Category
- Zend
- Copyright
- Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
Properties
Methods
insert(mixed $datum, mixed $priority) : void
Insert a value with a given priority
Utilizes {@var $serial} to ensure that values of equal priority are
emitted in the same order in which they are inserted.
ParametersName | Type | Description |
---|---|---|
$datum | mixed | |
$priority | mixed |
toArray() : array
Serialize to an array
Array will be priority => data pairs
ReturnsType | Description |
---|---|
array |