Skip to content

Commit cbc1343

Browse files
authored
Merge pull request #8 from samsonasik/doc-update-use-key
documentation update use key
2 parents b2d13de + 72fe0a2 commit cbc1343

File tree

1 file changed

+99
-0
lines changed

1 file changed

+99
-0
lines changed

README.md

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,18 @@ var_dump(\ArrayLookup\AtLeast::once($data, $filter)) // true
4747
$data = [1, 2, 3];
4848
$filter = static fn($datum): bool => $datum === 4;
4949

50+
var_dump(\ArrayLookup\AtLeast::once($data, $filter)) // false
51+
52+
// WITH key array included
53+
54+
$data = [1, 2, 3];
55+
$filter = static fn($datum, $key): bool => $datum === 1 && $key === 0;
56+
57+
var_dump(\ArrayLookup\AtLeast::once($data, $filter)) // true
58+
59+
$data = [1, 2, 3];
60+
$filter = static fn($datum, $key): bool => $datum === 4 && $key === 0;
61+
5062
var_dump(\ArrayLookup\AtLeast::once($data, $filter)) // false
5163
```
5264

@@ -63,6 +75,18 @@ var_dump(\ArrayLookup\AtLeast::twice($data, $filter)) // true
6375
$data = [1, "1", 3];
6476
$filter = static fn($datum): bool => $datum === 1;
6577

78+
var_dump(\ArrayLookup\AtLeast::twice($data, $filter)) // false
79+
80+
// WITH key array included
81+
82+
$data = [1, "1", 3];
83+
$filter = static fn($datum, $key): bool => $datum == 1 && $key >= 0;
84+
85+
var_dump(\ArrayLookup\AtLeast::twice($data, $filter)) // true
86+
87+
$data = [1, "1", 3];
88+
$filter = static fn($datum, $key): bool => $datum === 1 && $key >= 0;
89+
6690
var_dump(\ArrayLookup\AtLeast::twice($data, $filter)) // false
6791
```
6892

@@ -81,6 +105,20 @@ $data = [1, null, 0];
81105
$filter = static fn($datum): bool => ! $datum;
82106
$times = 3;
83107

108+
var_dump(\ArrayLookup\AtLeast::times($data, $filter, $times)) // false
109+
110+
// WITH key array included
111+
112+
$data = [false, null, 0];
113+
$filter = static fn($datum, $key): bool => ! $datum && $key >= 0;
114+
$times = 3;
115+
116+
var_dump(\ArrayLookup\AtLeast::times($data, $filter, $times)) // true
117+
118+
$data = [1, null, 0];
119+
$filter = static fn($datum, $key): bool => ! $datum && $key >= 0;
120+
$times = 3;
121+
84122
var_dump(\ArrayLookup\AtLeast::times($data, $filter, $times)) // false
85123
```
86124

@@ -101,6 +139,19 @@ var_dump(\ArrayLookup\Only::once($data, $filter)) // true
101139
$data = [1, "1", 3]
102140
$filter = static fn($datum): bool => $datum == 1;
103141

142+
var_dump(\ArrayLookup\Only::once($data, $filter)) // false
143+
144+
// WITH key array included
145+
146+
$data = [1, 2, 3];
147+
$filter = static fn($datum, $key): bool => $datum === 1 && $key >= 0;
148+
149+
var_dump(\ArrayLookup\Only::once($data, $filter)) // true
150+
151+
152+
$data = [1, "1", 3]
153+
$filter = static fn($datum, $key): bool => $datum == 1 && $key >= 0;
154+
104155
var_dump(\ArrayLookup\Only::once($data, $filter)) // false
105156
```
106157

@@ -117,6 +168,18 @@ var_dump(\ArrayLookup\Only::twice($data, $filter)) // true
117168
$data = [true, 1, new stdClass()];
118169
$filter = static fn($datum): bool => (bool) $datum;
119170

171+
var_dump(\ArrayLookup\Only::twice($data, $filter)) // false
172+
173+
// WITH key array included
174+
175+
$data = [1, "1", 3];
176+
$filter = static fn($datum, $key): bool => $datum == 1 && $key >= 0;
177+
178+
var_dump(\ArrayLookup\Only::twice($data, $filter)) // true
179+
180+
$data = [true, 1, new stdClass()];
181+
$filter = static fn($datum, $key): bool => (bool) $datum && $key >= 0;
182+
120183
var_dump(\ArrayLookup\Only::twice($data, $filter)) // false
121184
```
122185

@@ -136,6 +199,21 @@ $data = [false, null, 0];
136199
$filter = static fn($datum): bool => ! $datum;
137200
$times = 2;
138201

202+
var_dump(\ArrayLookup\Only::times($data, $filter, $times)) // false
203+
204+
// WITH key array included
205+
206+
$data = [false, null, 1];
207+
$filter = static fn($datum, $key): bool => ! $datum && $key >= 0;
208+
$times = 2;
209+
210+
var_dump(\ArrayLookup\Only::times($data, $filter, $times)) // true
211+
212+
213+
$data = [false, null, 0];
214+
$filter = static fn($datum, $key): bool => ! $datum && $key >= 0;
215+
$times = 2;
216+
139217
var_dump(\ArrayLookup\Only::times($data, $filter, $times)) // false
140218
```
141219

@@ -154,6 +232,15 @@ var_dump(\ArrayLookup\Finder::first($data, $filter)) // 1
154232

155233
$filter = static fn($datum): bool => $datum == 1000;
156234
var_dump(\ArrayLookup\Finder::first($data, $filter)) // null
235+
236+
// WITH key array included
237+
238+
$filter = static fn($datum, $key): bool => $datum === 1 && $key >= 0;
239+
240+
var_dump(\ArrayLookup\Finder::first($data, $filter)) // 1
241+
242+
$filter = static fn($datum, $key): bool => $datum == 1000 && $key >= 0;
243+
var_dump(\ArrayLookup\Finder::first($data, $filter)) // null
157244
```
158245

159246
*2. `Finder::last()`*
@@ -171,4 +258,16 @@ var_dump(\ArrayLookup\Finder::last(
171258
$data,
172259
static fn ($datum): bool => $datum < 5
173260
)); // null
261+
262+
// WITH key array included
263+
264+
var_dump(\ArrayLookup\Finder::last(
265+
$data,
266+
static fn ($datum, $key): bool => $datum > 5 && $key >= 0
267+
)); // 9
268+
269+
var_dump(\ArrayLookup\Finder::last(
270+
$data,
271+
static fn ($datum, $key): bool => $datum < 5 && $key >= 0
272+
)); // null
174273
```

0 commit comments

Comments
 (0)