take() публичный Метод

Limits the amount of values by the supplied amount
public take ( integer | null $amount ) : pinq\ITraversable
$amount integer | null The amount of values to retrieve, must be > 0 or null if all
Результат pinq\ITraversable
Пример #1
0
 /**
  * @dataProvider notUniqueData
  */
 public function testThatUniqueUsesTheFirstFoundValueForDuplicates(\Pinq\ITraversable $values, array $data)
 {
     $value1 = [1, 90 => 2, 3, 't' => 'foo', null, true];
     $value2 = [1, 90 => 2, 3, 't' => 'foo', null, true];
     $uniqueValues = $values->take(0)->append([&$value1, &$value2])->unique();
     $this->assertReferenceEquals($value1, $uniqueValues->asArray()[0]);
 }
Пример #2
0
 /**
  * @dataProvider everything
  */
 public function testThatNonIntegerAndStringKeysAreReindexed(\Pinq\ITraversable $traversable, array $data)
 {
     foreach ([new \stdClass(), [], [1], fopen('php://input', 'r'), 3.22, null, true] as $notIntegerOrString) {
         $withNonIntOrString = $traversable->take(1)->indexBy(function () use($notIntegerOrString) {
             return $notIntegerOrString;
         });
         $this->assertSame(empty($data) ? [] : [0 => reset($data)], $withNonIntOrString->asArray());
     }
 }
Пример #3
0
 /**
  * @dataProvider assocMixedValues
  */
 public function testThatTakeZeroReturnsEmptyArray(\Pinq\ITraversable $traversable, array $data)
 {
     $noNumbers = $traversable->take(0);
     $this->assertMatches($noNumbers, []);
 }