chore: Аннотации к типам
This commit is contained in:
parent
530a3b931d
commit
730a608f9b
27 changed files with 491 additions and 134 deletions
|
|
@ -39,7 +39,9 @@ class left {
|
|||
|
||||
define('__', '_ARGUMENT_PLACE_');
|
||||
class partial {
|
||||
/** @var array<mixed> */
|
||||
protected $params;
|
||||
/** @var callable */
|
||||
protected $fn;
|
||||
|
||||
public function __construct($params) {
|
||||
|
|
@ -354,33 +356,37 @@ class Functions {
|
|||
|
||||
/**
|
||||
* Поиск элемента в массиве
|
||||
* @param mixed $cb сравнение с элементом массива
|
||||
* @param callable $cb сравнение с элементом массива
|
||||
* @param array $hs массив в котором ищется значение
|
||||
*
|
||||
* @return int|string|null ключ найденого элемента в массиве
|
||||
*/
|
||||
static function array_usearch($cb, array $hs, $strict = false) {
|
||||
foreach($hs as $key => $value) {
|
||||
if (call_user_func_array($cb, [$value, $key, $strict])) return $key;
|
||||
if (call_user_func_array($cb, [$value, $key, $strict])) {
|
||||
return $key;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Выбирает все сроки из таблицы с уникальными значениями ключа
|
||||
* @param string $name Имя ключа
|
||||
* @param array $table Двухмерный массив
|
||||
* @example
|
||||
* key_unique_values ('name', array (array ('name' => 1), array ('name' => 2), array ('name' => 1)))
|
||||
* => array (1, 2)
|
||||
* @end example
|
||||
*
|
||||
* @param string $name Имя ключа
|
||||
* @param array $table Двухмерный массив
|
||||
* @return array Массив с уникальными значениями ключа
|
||||
*/
|
||||
static function key_unique_values ($name, $table) {
|
||||
// Ищем уникальные значения для заданного ключа
|
||||
$keys = [];
|
||||
foreach ($table as $row) {
|
||||
if (!in_array ($row[$name], $keys))
|
||||
if (!in_array ($row[$name], $keys)) {
|
||||
$keys[] = $row[$name];
|
||||
}
|
||||
}
|
||||
return $keys;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue