Files
core/include/php_compat.php
Harald Eilertsen 6f65d2d6ef Make array_find available for PHP < 8.4
array_find is a useful function, but only available in PHP 8.4 or later.
Here we implement it ourselves if it's not already defined, to make it
available for all supported PHP versions.
2026-05-16 09:32:26 +02:00

29 lines
740 B
PHP

<?php
/*
* Forward compatibility with more recent PHP versions.
*
* SPDX-FileCopyrightText: 2026 The Hubzilla Community
* SPDX-FileContributor: Harald Eilertsen <haraldei@anduin.net>
*
* SPDX-License-Identifier: MIT
*
* This file contains functions that allow us to use convenient functions from
* later PHP versions in earlier versions where these functions may not be
* supported directly.
*/
if (!function_exists('array_find')) {
// array_find is defined in PHP 8.4 or higher, so for earlier PHP versions we
// define it here.
function array_find(array $array, callable $callback): mixed {
foreach ($array as $key => $entry) {
if ($callback($entry, $key) === true) {
return $entry;
}
}
return null;
}
}