Как правильно проверить возвращаемое значение?
Потому что объект существует.
В пхп почти все, что не false, 0, null, [] равно true, если таким образом сравнивать
Если хотите "пожоще", делайте if check() !== false
Вот почитайте приведение типов