PHPackages                             krugozor/hash - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Image &amp; Media](/categories/media)
4. /
5. krugozor/hash

ActiveLibrary[Image &amp; Media](/categories/media)

krugozor/hash
=============

PHP Compare Image (Average Hash, Simple Hash)

1.0.0(1y ago)08PHPPHP &gt;=8.0

Since Nov 16Pushed 1y agoCompare

[ Source](https://github.com/Vasiliy-Makogon/CompareImage)[ Packagist](https://packagist.org/packages/krugozor/hash)[ RSS](/packages/krugozor-hash/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (2)Used By (0)

PHP Compare Image (algoritm Average Hash, Simple Hash)
======================================================

[](#php-compare-image-algoritm-average-hash-simple-hash)

A fast image comparison library for PHP 8. Get Average Hash string and detect duplicate image. Solution from [nvthaovn/CompareImage](https://github.com/nvthaovn/CompareImage) was refactored (tested on PHP 8.2).

Install
-------

[](#install)

```
composer require krugozor/hash

```

Example (two similar but different pictures)
--------------------------------------------

[](#example-two-similar-but-different-pictures)

#### 1.jpg

[](#1jpg)

[![alt text](1.jpg)](1.jpg)

#### 2.jpg

[](#2jpg)

[![alt text](2.jpg)](2.jpg)

```
include './src/AverageHash.php';

$hash1 = AverageHash::getHash('1.jpg');
$hash2 = AverageHash::getHash('2.jpg');

echo "Difference between $hash1 and $hash2: " . AverageHash::compare($hash1, $hash2);
// difference = 15
```

#### 3.jpg

[](#3jpg)

[![alt text](3.jpg)](3.jpg)

```
$hash3 = AverageHash::getHash('3.jpg');

echo "Difference between $hash1 and $hash3: " . AverageHash::compare($hash1, $hash3);
// difference = 10
// if different rates
