PHP Conference Japan 2024

ReflectionClass::isCloneable

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

ReflectionClass::isCloneable返回此類別是否可複製

說明

public ReflectionClass::isCloneable(): bool

返回此類別是否可複製。

參數

此函式沒有參數。

返回值

如果類別可複製,則返回 true,否則返回 false

範例

範例 #1 ReflectionClass::isCloneable() 的基本用法

<?php
class NotCloneable {
public
$var1;

private function
__clone() {
}
}

class
Cloneable {
public
$var1;
}

$notCloneable = new ReflectionClass('NotCloneable');
$cloneable = new ReflectionClass('Cloneable');

var_dump($notCloneable->isCloneable());
var_dump($cloneable->isCloneable());
?>

上述範例將輸出

bool(false)
bool(true)

新增註解

使用者貢獻的註解 4 則註解

info at ensostudio dot ru
2 年前
類似的函式
<?php
function isCloneable(object $obj): bool
{
return !
method_exists($obj, '__clone') || is_callable([$obj, '__clone']);
}
?>
info at ensostudio dot ru
2 年前
這個方法會檢查 `__clone()` 方法是否被宣告為私有
xxxargonxxx at gmail dot com
5 年前
我想知道這個方法是如何判斷是否可複製的。沒有任何說明。
php at abiusx dot com
8 年前
這不適用於許多核心類別,就像大多數其他反射方法一樣。
To Top