PHP.mk документација

SplPriorityQueue::compare

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

splpriorityqueue.compare.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека splpriorityqueue.compare.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
SplPriorityQueue::compare

Референца за `splpriorityqueue.compare.php` со подобрена типографија и навигација.

splpriorityqueue.compare.php

SplPriorityQueue::compare

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

SplPriorityQueue::compareСпоредете ги приоритетите за правилно поставување елементи во купот при просејување нагоре

= NULL

public SplPriorityQueue::compare(mixed $priority1, mixed $priority2): int

Спореди priority1 with priority2.

Параметри

priority1

Приоритетот на првиот јазол што се споредува.

priority2

Приоритетот на вториот јазол што се споредува.

Вратени вредности

Резултат од споредбата, позитивен цел број ако priority1 е поголемо од priority2, 0 ако се еднакви, негативен цел број инаку.

Забелешка:

Повеќе елементи со ист приоритет ќе бидат извадени од редот без посебен редослед.

Белешки од корисници 2 забелешки

Анонимен
пред 16 години
At this time, the documentation sais "Note: Multiple elements with the same priority will get dequeued in no particular order."

If you need elements of equal priority to maintain insertion order, you can use something like:

<?php

class StablePriorityQueue extends SplPriorityQueue {
    protected $serial = PHP_INT_MAX;
    public function insert($value, $priority) {
        parent::insert($value, array($priority, $this->serial--));
    }
}

?>
Анонимен
пред 2 години
To create a min-heap priority queue, and have extract() give you the lowest priority:

class MinPriorityQueue extends SplPriorityQueue {
    public function compare($priority1, $priority2) {
        if ($priority1 === $priority2) return 0;
        return $priority1 > $priority2 ? 1 : -1; 
    }
}
Навигација

Прелистувај сродни теми и функции.

На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.