라이브러리
[PHP] DsMap::filter - 호출 가능 항목을 사용하여 포함할 쌍을 결정하기 위한 새 맵을 만듭니다.
DsMap::filter란?
PHP 8.0 버전부터 소개된 `DsMap::filter`는 `DsMap` 객체에 대한 필터링 메서드입니다. 이 메서드는 `DsMap` 객체에 있는 모든 키-값 쌍을 필터링하여 새로운 `DsMap` 객체를 반환합니다.
DsMap::filter 사용법
`DsMap::filter` 메서드는 다음과 같은 형식으로 사용됩니다.
#hostingforum.kr
php
DsMap::filter($callback)
* `$callback`: 필터링을 위한 콜백 함수입니다. 이 콜백 함수는 `$key`와 `$value`를 인자로 받아 `$value`를 반환하거나 `$value`를 수정할 수 있습니다.
예제 1: 필터링을 위한 콜백 함수
#hostingforum.kr
php
use function SplObjectStorageattach;
use function SplObjectStoragedetach;
use function SplObjectStorage
ewind;
use function SplObjectStoragevalid;
use function SplObjectStoragegetInfo;
use function DsMap;
use function DsMap::filter;
class Person {
public $name;
public $age;
public function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
}
$people = new Map();
$people->attach(new Person('John', 25));
$people->attach(new Person('Jane', 30));
$people->attach(new Person('Bob', 20));
$filteredPeople = $people->filter(function ($person) {
return $person->age > 25;
});
foreach ($filteredPeople as $person) {
echo $person->name . ' ' . $person->age . "
";
}
이 예제에서는 `DsMap::filter` 메서드를 사용하여 `age`가 25보다 큰 사람만 필터링합니다.
예제 2: 필터링을 위한 콜백 함수 (값 수정)
#hostingforum.kr
php
use function DsMap;
use function DsMap::filter;
$numbers = new Map();
$numbers->attach(1);
$numbers->attach(2);
$numbers->attach(3);
$numbers->attach(4);
$numbers->attach(5);
$filteredNumbers = $numbers->filter(function ($value) {
return $value * 2;
});
foreach ($filteredNumbers as $value) {
echo $value . "
";
}
이 예제에서는 `DsMap::filter` 메서드를 사용하여 모든 값에 2를 곱하여 필터링합니다.
결론
`DsMap::filter` 메서드는 `DsMap` 객체에 대한 필터링 메서드입니다. 이 메서드는 필터링을 위한 콜백 함수를 인자로 받아 새로운 `DsMap` 객체를 반환합니다. 필터링을 위한 콜백 함수는 `$key`와 `$value`를 인자로 받아 `$value`를 반환하거나 `$value`를 수정할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.