babaev-an 6e831e2650 20250707
Бета 1.1.1
2025-07-07 18:02:04 +03:00

46 lines
1.8 KiB
PHP

<?php
namespace goodboyalex\php_components_pack\operators;
/**
* Полезные операторы.
*
* @author Александр Бабаев
* @package php_components_pack
* @version 1.0
* @since 1.1.1
*/
final class Operators
{
/**
* Проверяет, что значение <code>$value</code> равно одному из значений <code>$values</code>.
*
* @param mixed $value Искомое значение.
* @param mixed ...$values Массив значений.
*
* @return bool Возвращает <code>true</code>, если значение <code>$value</code> равно одному из значений
* <code>$values</code>, иначе <code>false</code>.
*/
public static function Is (mixed $value, mixed ...$values): bool
{
// Проверяем, что хотя бы одно из значений равно искомому и возвращаем результат
return array_any($values, fn ($curValue) => $curValue === $value);
}
/**
* Проверяет, сколько раз значение <code>$value</code> встречается в массиве <code>$values</code>.
*
* @param mixed $value Искомое значение.
* @param mixed ...$values Массив значений.
*
* @return int Возвращает количество значений <code>$values</code>, которые равны <code>$value</code>.
*/
public static function IsCount (mixed $value, mixed ...$values): int
{
// Получаем массив значений повторений
$result = array_count_values($values);
// Возвращаем результат
return $result[$value] ?? 0;
}
}