diff --git a/src/UnicaenLdap/Service/AbstractService.php b/src/UnicaenLdap/Service/AbstractService.php
index 8ff789fa1e11f0b4edcc7eed8947dbca6f2b9d00..a741996879f908564b91d8f9eb2e1f1b0f230366 100644
--- a/src/UnicaenLdap/Service/AbstractService.php
+++ b/src/UnicaenLdap/Service/AbstractService.php
@@ -161,8 +161,11 @@ abstract class AbstractService implements
         if ($this->count > 0) {
 
             if ($orderBy !== null && is_string($orderBy)) {
+                if (! function_exists($ldapSort = 'ldap_sort')) {
+                    throw new \BadFunctionCallException("Impossible de trier, la fonction 'ldap_sort' n'existe plus depuis PHP 8.0");
+                }
                 ErrorHandler::start(E_WARNING);
-                $isSorted = ldap_sort($resource, $search, $orderBy);
+                $isSorted = $ldapSort($resource, $search, $orderBy);
                 ErrorHandler::stop();
                 if ($isSorted === false) {
                     throw new Exception($this, 'sorting: ' . $orderBy);
@@ -235,8 +238,11 @@ abstract class AbstractService implements
         ErrorHandler::stop();
         if ($this->count > 0) {
             if ($orderBy !== null && is_string($orderBy)) {
+                if (! function_exists($ldapSort = 'ldap_sort')) {
+                    throw new \BadFunctionCallException("Impossible de trier, la fonction 'ldap_sort' n'existe plus depuis PHP 8.0");
+                }
                 ErrorHandler::start(E_WARNING);
-                $isSorted = ldap_sort($resource, $search, $orderBy);
+                $isSorted = $ldapSort($resource, $search, $orderBy);
                 ErrorHandler::stop();
                 if ($isSorted === false) {
                     throw new Exception($this, 'sorting: ' . $orderBy);