略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: ReflectionParameter::isCallable

2024-04-28

ReflectionParameter::isCallable

(PHP 5 >= 5.4.0, PHP 7, PHP 8)

ReflectionParameter::isCallableReturns whether parameter MUST be callable

警告

本函数已自 PHP 8.0.0 起被废弃。强烈建议不要依赖本函数。

See the example below for an alternative way to derive this information.

说明

public ReflectionParameter::isCallable(): bool

警告

本函数还未编写文档,仅有参数列表。

参数

此函数没有参数。

返回值

Returns true if the parameter is callable, false if it is not or null on failure.

范例

示例 #1 PHP 8.0.0 equivalent

As of PHP 8.0.0, the following code will report if a type supports callables, including as part of a union.

<?php
function declaresCallable(ReflectionParameter $reflectionParameter): bool
{
    
$reflectionType $reflectionParameter->getType();

    if (!
$reflectionType) return false;

    
$types $reflectionType instanceof ReflectionUnionType
        
$reflectionType->getTypes()
        : [
$reflectionType];

   return 
in_array('callable'array_map(fn(ReflectionNamedType $t) => $t->getName(), $types));
}
?>
add a noteadd a note

User Contributed Notes 1 note

up
0
me at abiusx dot com
6 years ago
Apparently this does not return true for callback arguments to many of the internal functions, such as array_map and array_walk.

官方地址:https://www.php.net/manual/en/reflectionparameter.iscallable.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3