46 lines
1.8 KiB
PHP
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;
|
|
}
|
|
} |