
SplObjectStorage::offsetExists() 메소드는 객체가 스토리지에 존재하는지 확인하는 메소드입니다. 이 메소드는 객체가 스토리지에 존재하지 않으면 false를 반환하고, 존재하면 true를 반환합니다.
null 값을 반환하는 상황은 없습니다. SplObjectStorage::offsetExists() 메소드는 항상 boolean 값을 반환합니다.
그러나, 객체가 스토리지에 존재하지 않으면 false를 반환하고, 존재하면 true를 반환하는 것과 달리, SplObjectStorage::offsetGet() 메소드는 객체가 스토리지에 존재하지 않으면 null을 반환합니다.
예를 들어, 다음 코드는 SplObjectStorage::offsetExists() 메소드가 null 값을 반환하는 경우를 설명합니다.
#hostingforum.kr
php
$storage = new SplObjectStorage();
$storage->attach(new stdClass());
var_dump($storage->offsetExists(new stdClass())); // bool(true)
var_dump($storage->offsetExists(new stdClass())); // bool(true)
$storage->detach($storage->current());
var_dump($storage->offsetExists(new stdClass())); // bool(false)
var_dump($storage->offsetGet(new stdClass())); // NULL
2025-04-03 04:58