
PHP機能ユーティリティライブラリ、JavaScript Lodashポート/FP、RAMDAライブラリへのPHPへ。
すべての機能は副作用がなく、自動的にカレーであり、データは不可能です。
通常、反復可能なコレクションパラメーターは、カリーを便利にするために最後に提供されます。
怠zy /遅延評価は、機能パイプラインでサポートされています。
詳細、ドキュメント、および例については、 https://idlephp.techにアクセスしてください。
PHP 7.4以上
composer require miroshnikov/idles
注記
IDLEは現在、アクティブな開発中です。ロードマップは、LodashおよびRamdaライブラリといくつかの機能ツールからすべてのメソッドを追加することです。
concat(?iterable $ array, $ value ): iterable追加のiterables/valuesで$arrayを連結します
count(callable $ predicate , ?iterable $ collection ): int $ $predicateに一致する$collectionのアイテムの数をカウントします
countBy(callable $ iteratee , ?iterable $ collection ): array配列を返します:[ $iteratee($value) => $iteratee($value) $collectionで見つかった回数]
drop(int $ n , ?iterable $ collection ): iterable最初の$nエレメンスをスキップし、反復可能な残りの部分を返します
dropRight(int $ n , ?iterable $ collection ): iterable最後の$n要素をスキップします
findIndex(callable $ predicate , ?iterable $ collection ): int findのように、最初の要素のインデックスを返すPredicateはTruthyを返します-1
findLastIndex(callable $ predicate , ?iterable $ collection ): int findのように、最後の要素のインデックスを返すPredicateはTruthyを返します-1
flatten(?iterable $ collection ): iterable1つのレベルの深さを繰り返します。
flattenDeep(?iterable $ collection ): iterable再帰的に平らになります反復性。
flattenDepth(int $ depth , ?iterable $ collection ): iterable深さまでアレイを再帰的に平らにします。
fromPairs(?iterable $ collection ): arrayリストキー値ペアから新しいレコードを作成します。 toPairsの逆。
head(?iterable $ collecton )反復可能な最初の要素を取得します
indexOf( $ value , ?iterable $ collection ): int $collection 、else -1の$valueの最初の発生のインデックスを返します。
intersection(?iterable $ record1 , ?iterable $ record2 ): array両方のレコードに含まれる一意の値を返します
intersectionBy(callable $ iteratee , ?iterable $ record1 , ?iterable $ record2 ): array intersectionと同様ですが、比較前に各要素の$iterateeを呼び出します。
intersectionWith(callable $ comparator , ?iterable $ record1 , ?iterable $ record2 ): array intersectionのように、しかし$comparatorを呼び出して、要素を比較します。
join(string $ separator , ?iterable $ collection ): string $separatorで区切られた反復要素に結合します
last(?iterable $ collecton )反復可能な最後の要素を取得します
nth (int $ offset , ?iterable $ collection ) $offset要素を返します。 $offsetが負の場合、インデックスの長さの要素 + $offsetが返されます。
remove(int $ start , int $ count , ?iterable $ iterable ): array $startから始まり、 $count要素を含む$iterableからアイテムを削除します。
slice(int $ start , int ? $ end , ?iterable $ collection ): iterable $start起動から$iterableのスライスを再実行しますが、 $endを含めません。
take(int $ n , ?iterable $ collection ): iterableNecerableからNの最初の要素を取ります
takeRight(int $ n , ?iterable $ collection ): array最後から採取したn要素で反復可能なスライスを返します。
uniq(?iterable $ collection ): array ===を使用して複製を削除します
uniqBy(callable $ iteratee , ?iterable $ collection ): array uniqのように、 $iteratee fistを適用します
uniqWith(callable $ predicate , ?iterable $ collection ): array uniqのように、しかし$predicateを使用して要素を比較します
without(array $ values , ?iterable $ collection ): iterable $valuesなしで$iterableを返します
zip (iterable $ a , iterable $ b ): iterableグループ化された要素の反復可能な要素を作成します。最初の要素には、指定された反復可能性の最初の要素が含まれ、その2番目には2番目の要素などが含まれます。
zipWith (callable $ iteratee , iterable $ a , iterable $ b ): iterable zipのように、 $iterateeを受け入れて、グループ化された値を組み合わせる方法を指定します。
all(?callable $ predicate , ?iterable $ collection ): bool $predicate $collectionのすべての要素に対してtruthyを返すかどうかを確認します。 falseyに戻ったら停止します
any(callable $ predicate , ?iterable $ collection ): bool $predicate $collectionの要素に対してTruthyを返すかどうかを確認します。最初に見つかった停止。
each(callable $ iteratee , ?iterable $ collection ): iterable $collectionの要素を繰り返します。 Iterateeは、 falseを返すことにより、早期に反復を終了する場合があります。
filter(callable $ predicate , ?iterable $ collection ): iterable要素を返す$predicate Truthyを返します。
find(?callable $ predicate , ?iterable $ collection )最初の要素を返します$predicate Truthyを返します。
flatMap(callable $ iteratee , ?iterable $ collection ): iterableマップは平らになります
flatMapDeep(callable $ iteratee , ?iterable $ collection ): iterable flatMapのように、しかし結果を再帰的に平らにします。
flatMapDepth(callable $ iteratee , int $ depth , ?iterable $ collection ): iterable flatMapのように、しかしマッピングされた結果を最大$depth時間まで平らにします
groupBy(callable $ iteratee , ?iterable $ collection ): array $iterateeを介して各値を実行することから生成されたキーで構成される配列を作成します。
includes( $ value , ?iterable $ collection ): bool $value $collectionであるかどうかを確認します。
indexBy(callable $ iteratee , ?iterable $ collection ): iterable $iterateeを介して$collectionの各要素を実行した結果から生成されたキーで構成されるレコードを作成します。
map (callable $ iteratee , ?iterable $ collection )各要素を$ $iteratee $collectionで実行します。
orderBy (array $ iteratees , array $ orders , ?iterable $ collection ) sortByようなものですが、ソートオーダーを指定できます
partition(callable $ predicate , ?iterable $ collection ): array $collection 2つのグループに分割します。最初のグループには要素が含まれています$predicate Truthyを返します。2番目には$predicate Falseyを返します。
reduce (callable $ iteratee , $ accumulator , ?iterable $ collection ) $iterateeを介してコレクションで各要素を実行することの蓄積された結果である$collection値に減らします
resolve (array $ resolvers , array $ record ): array $resolversを使用して新しいプロパティを$recordに追加します。
sort(array $ comparator , ?iterable $ collection ): array $comparator比較( $a <=> $b )機能を使用して$collection並べ替えます
sortBy(array $ comparators , ?iterable $ collection ): array $comparatorsに従って昇順で$collection並べ替えます。
sortWith(array $ comparators , ?iterable $ collection ): array比較の配列( $a <=> $b )関数に従って$collectionを並べ替えます
values(?iterable $ collection ): iterable $collectionの値のインデックス付き反復を返します。
always ( $ value )常に指定された値を返す関数を返します。
applyTo ( $ value , callable $ interceptor ) $interceptor($value)を返します。
ary (int $ n , callable $ fn ): callable追加の引数を無視して、最大$n引数で$fnを呼び出す関数を作成します。
ascend (callable $ func , $ a , $ b ): callable <=>と比較できる値を返す機能から昇順のコンパレータ関数を作成します
attempt (callable $ fn ) $fnを呼び出し、結果またはキャッチされた例外のいずれかを返します。
compose (callable . . . $ funcs ): callable pipeのように、しかし右から左に機能を呼び出します。
curry (callable $ f ): callable Idles_ constは、プレースホルダーとして使用できます。
curryRight (callable $ f ): callable curryのように、しかし議論は準備されています。
descend (callable $ func , $ a , $ b ): callable <=>と比較できる値を返す関数から降順コンパレータ関数を作成します
flip (callable $ fn ): callable最初の2つの引数が逆になって新しいカレー機能を返します
juxt (array $ funcs ): callable関数のリストを値のリストに適用します。
memoize (callable $ func ): callable $funcの結果をメモ化する関数を作成します。 $resolver 、マップキャッシュキーを返します。
negate (callable $ predicate ): callable $predicate関数の結果を無効にする関数を作成します。
once (callable $ fn ): callable $fn 1回のみ呼び出され、最初の値はその後の呼び出しで返されます。
partial (callable $ fn , array $ partials ): callable引数に加えられた$partialsを使用して$fnを呼び出す関数を作成します。 Idles_ constは、プレースホルダーとして使用できます。
partialRight (callable $ fn , array $ partials ): callable partialであるが$partialsが追加されています。
pipe (callable . . . $ funcs ): callable左から右への関数組成。最初の議論にはいかなるアリティもあります。残りの議論は単一でなければなりません。
tap (callable $ interceptor , $ value ) $interceptor($value)を呼び出してから、元の$valueを返します
times (callable $ iteratee , int $ n ): array各呼び出しの結果の配列を返し、iteratee $nを呼び出します。
tryCatch (callable $ tryer , callable $ catcher , $ value ) $tryerを呼び出して、スローする場合、 $catcherを呼び出します
unary (callable $ fn ): callable ary(1, $fn)
allPass (array $ predicates ): callable引数がすべての$predicatesを渡すかどうかをチェックする関数を返します。
anyPass (array $ predicates ): callable引数が$predicatesのいずれかを渡すかどうかをチェックする関数を返します。
both (callable $ func1 , callable $ func2 ): callable結果の関数は、それがfalsyまたは$ func2 $func1(...$args)の場合、$ func1 $func2(...$args)を返します。
cond (array $ pairs ): callable $pairsを繰り返し、最初の述語の対応する関数を呼び出して真実を返します。
defaultTo ( $ default )( $ value ) $valueを返しますか? $default
either (callable $ func1 , callable $ func2 ): callable結果の関数は、それが真実または$func1(...$args) $func2(...$args)を返します。
ifElse (callable $ predicate , callable $ onTrue , callable $ onFalse ): callable結果の関数は$onTrue(...$args) Truthyまたは$predicate(...$args)である場合$onFalse(...$args)を返します。
not ( $ a ): bool返品!$a
unless (callable $ predicate , callable $ whenFalse , mixed $ value ) $predicate($value) ? $value : $whenFalse($value)
when (callable $ predicate , callable $ whenTrue , mixed $ value ) $predicate($value) ? $whenTrue($value) : $value
add (int|float $ a , int|float $ b ): int|float$ a + $ b
dec (int $ number ): int$ number -1を返します
divide (int|float $ a , int|float $ b ): int|float$ a / $ b
gt ( $ a , $ b ): bool$ a> $ b
gte ( $ a , $ b ): bool$ a> = $ b
inc (int $ number ): int$番号 + 1を返します
lt ( $ a , $ b ): bool$ a <$ b
lte ( $ a , $ b ): bool$ a <= $ b
modulo (int|float $ a , int|float $ b ): int$ a%$ b
multiply (int|float $ a , int|float $ b ): int|float$ a * $ b
round (int $ precision , int|float $ number ): float指定された$precisionに$numberを丸めます
subtract (int|float $ a , int|float $ b ): int|float$ a -$ b
sum(?iterable $ collection ): int|float反復可能な要素を合計します
sumBy(?callable $ iteratee , ?iterable $ collection ): int|float同様のsumでありますが、 $iteratee 、合計する値を生成するために、反復可能な各要素に対して呼び出されます。
assignDeep (array $ iterables ): arrayプロパティを再帰的にマージし、数値キーが上書きされます。
defaults(?iterable $ record1 , ?iterable $ record2 ): arrayプロパティを右から左にマージし、数値キーが上書きされます。
evolve(array $ transformations , ?iterable $ record ): array $recordプロパティで変換関数を再帰的に呼び出すことにより、新しいレコードを作成します。
extend(?iterable $ source1 , ?iterable $ source2 ): arrayプロパティのマージ、数値キーが上書きされます。
has(string|int $ key , ?iterable $ record ): bool $recordに$keyがあるかどうかを確認します
hasPath(string|int|array $ path , ?iterable $ record ): bool $recordに$pathが存在するかどうかを確認します
invert(?iterable $ collection ): arrayキーを値に置き換えます。重複キーが上書きされます。
keys(?iterable $ record ): iterable $recordのキーのインデックス付き反復を返します。
merge(?iterable $ source1 , ?iterable $ source2 ): arrayプロパティをマージし、数値キーが追加されます。
mergeDeep (array $ iterables ): arrayプロパティを再帰的にマージし、数値キーが追加されます。
mergeLeft(?iterable $ left , ?iterable $ right ): array merge($right, $left)
mergeWith(callable $ customizer , ?iterable $ left , ?iterable $ right ): array mergeのように、しかし両方のレコードにキーが存在する場合、 $customizerキーに関連付けられた値に呼び出されます
modifyPath (array|string|int $ path , callable $ updater , ?iterable $ record )指定された$pathで値に$updater関数を適用することにより、新しいレコードを作成します。
objOf (string $ key , $ value ): array単一のキー=>値ペアを含むarrayを作成します。
omit(array $ keys , ?iterable $ collection ): iterable pickの反対。 $keysなしでレコードを返します。
omitBy(callable $ predicate , ?iterable $ record ): iterable pickByの反対。 $predicate FALSELYを返すという$recordのプロパティを返します。
path (array|string $ path , ?iterable $ collection )特定のパスで値を取得します。
paths(array $ paths , ?iterable $ collection ): arrayキー、値。注文は保持されます。
pick(array $ keys , ?iterable $ collection ): iterable $keysのみを含むレコードを返します
pickBy(callable $ predicate , ?iterable $ record ): iterableキーのみを含む記録を返す$predicate Truthyを返します。
pluck (string|int $ key , ?iterable $ collection )提供された配列内のすべてのレコードから同じ名前付きプロパティを摘み取って、新しい配列を返します。
prop (string|int $ key , ?iterable $ record )指定されたプロパティを返します。
propEq(string|int $ key , $ value , ?iterable $ record ): bool$ records [$ key] == $ valueを返します
setPath ( $ path , $ value , ?iterable $ record ) $pathを$valueで設定してコピー$recordを返します
toPairs(?iterable $ record ): iterableレコードを[$key, $value]の配列に変換します
where(array $ spec , ?iterable $ record ): bool $record $recordの対応するプロパティを使用して$specプロパティを呼び出すことにより、仕様を満たすかどうかを確認します。
whereAny(array $ spec , ?iterable $ record ): bool $record $recordの対応するプロパティを使用して$specプロパティを呼び出すことにより、仕様を満たすかどうかを確認します。予測のうち少なくとも1つがtrue返す場合、 trueを返します。
whereEq(array $ spec , ?iterable $ test ): bool $test $specを満たしているかどうかを確認してください
escape (string $ s ): string文字を "&"、 "<"、 ">"、 '"'、および" '"に対応するHTMLエンティティに変換します。
escapeRegExp (string $ regexp ): string正規表現を逃れます
split (string $ separator , string $ s ): array $separatorで文字列を分割します。
startsWith (string $ target , string $ s ): bool文字列が$targetで始まる場合。
toLower (string $ s ): string文字列を小文字に変換します
toUpper (string $ s ): string文字列を上品に変換します
words (string $ pattern , string $ string ): array文字列をその単語の配列に分割します。
collect(?iterable $ iterable ): array繰り返し可能な任意のarrayを収集します
eq ( $ a , $ b ): bool $a == $b
equals ( $ a , $ b ): bool $a === $b
F (... $ args ): bool常にfalseを返します
identity ( $ value )受信する最初の議論を返します。
iterate (callable $ f , $ value ): iterable $value 、 $f($value) 、 $f($f($value))などのジェネレーターを返します。
just ( $ value ): Optional指定された非ヌル値でオプションを返します
nothing(): Optional空のオプションを返します
now (): int秒数のタイムスタンプを返します
just (mixed $ value ): Optionalたぶん/オプションモナド(コンテナ)は、非ヌル値を含む場合と含まない場合があります。方法があります:
isPresent(): bool空ではない場合はtrue
isEmpty(): bool空の場合はtrue
get(): mixed値を返し、空の場合は例外をスローしますorElse(mixed $default): mixedオプションが非空白または$default場合、含まれる値を返しますorElseThrow(Exception $e) - 存在する場合は含まれる値を返し、それ以外の場合は例外をスローしますmap(callable $f): Optional - 値が存在する場合は、 $fを適用し、結果が非ヌルの場合は、結果を説明するオプションを返しますflatMap(callable $f): Optional - $fオプションを返す場合はmapの代わりに使用しますfilter(callable $predicate): Optional - 値が存在し、 $predicateと一致する場合は、値でオプションを返します。
size (array|Countable|object|string|callable $ value ): int関数の可算のサイズ、パラメーターの数、文字列の長さ、またはオブジェクトのプロパティの数を返します
T (... $ args ): bool常にtrueを返します