sebastian/comparator

Provides the functionality to compare PHP values for equality

Maintainers

👁 sebastian

Package info

github.com/sebastianbergmann/comparator

pkg:composer/sebastian/comparator

Statistics

Installs: 917 490 557

Dependents: 148

Suggesters: 0

Stars: 7 052

Open Issues: 1

8.3.0 2026-06-05 03:06 UTC

Requires

Requires (Dev)

Suggests

Provides

None

Conflicts

None

Replaces

None

BSD-3-Clause c025fc7604afab3f195fab7cdaf72327331af241

  • Sebastian Bergmann <sebastian.woop@phpunit.de>
  • Jeff Welch <whatthejeff.woop@gmail.com>
  • Volker Dusch <github.woop@wallbash.com>
  • Bernhard Schussek <bschussek.woop@2bepublished.at>

equalitycomparecomparator


README

👁 Latest Stable Version
👁 CI Status
👁 codecov

sebastian/comparator

This component provides the functionality to compare PHP values for equality.

Installation

You can add this library as a local, per-project dependency to your project using Composer:

composer require sebastian/comparator

If you only need this library during development, for instance to run your project's test suite, then you should add it as a development-time dependency:

composer require --dev sebastian/comparator

Usage

<?php
use SebastianBergmann\Comparator\Factory;
use SebastianBergmann\Comparator\ComparisonFailure;

$date1 = new DateTime('2013-03-29 04:13:35', new DateTimeZone('America/New_York'));
$date2 = new DateTime('2013-03-29 03:13:35', new DateTimeZone('America/Chicago'));

$factory = new Factory;
$comparator = $factory->getComparatorFor($date1, $date2);

try {
 $comparator->assertEquals($date1, $date2);
 print "Dates match";
} catch (ComparisonFailure $failure) {
 print "Dates don't match";
}