Ответ 1
У PHP нет подсказки типа для ресурсов, потому что
Никакой тип подсказки для ресурсов не добавляется, поскольку это предотвратит переход от ресурсов к объектам для существующих расширений, которые некоторые уже сделали (например, GMP).
Однако вы можете использовать is_resource()
в теле функции/метода, чтобы проверить переданный аргумент и обработать его по мере необходимости. Вариантом многоразового использования было бы такое утверждение:
function assert_resource($resource)
{
if (false === is_resource($resource)) {
throw new InvalidArgumentException(
sprintf(
'Argument must be a valid resource type. %s given.',
gettype($resource)
)
);
}
}
который вы могли бы затем использовать в своем коде:
function test($ch)
{
assert_resource($ch);
// do something with resource
}