array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ja', ), 'this' => array ( 0 => 'splheap.compare.php', 1 => 'SplHeap::compare', ), 'up' => array ( 0 => 'class.splheap.php', 1 => 'SplHeap', ), 'prev' => array ( 0 => 'class.splheap.php', 1 => 'SplHeap', ), 'next' => array ( 0 => 'splheap.count.php', 1 => 'SplHeap::count', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ja', 'path' => 'reference/spl/splheap/compare.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
SplHeap::compare — 要素を比較し、ヒープ内の適切な位置に置く
value1
と value2
を比較します。
SplHeap::compare() 内で例外がスローされると、ヒープが壊れてしまいブロックされた状態になることがあります。 SplHeap::recoverFromCorruption() をコールすればブロック状態を解除することができます。 しかし、適切な場所に配置されていない要素が出てくることもあり、 ヒープの性質が失われてしまいます。
value1
比較したい最初のノード。
value2
比較したい 2 番目のノード。
比較結果を返します。value1
が value2
より大きい場合は正の整数値、等しい場合は 0、
小さい場合は負の整数値となります。
注意:
同一の値を持つ複数の要素をヒープ内に保持することはおすすめしません。 そうすると、ヒープ内の相対位置がはっきりしなくなってしまいます。