1
0
mirror of https://github.com/php/doc-ru.git synced 2026-04-24 15:58:39 +02:00
Files
archived-doc-ru/reference/reflection/reflectionclass/isinstantiable.xml
T
2022-12-13 00:33:44 +03:00

135 lines
3.3 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: ec2fe9a592f794978114ef5021db9f1d00c2e05d Maintainer: aur Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="reflectionclass.isinstantiable" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>ReflectionClass::isInstantiable</refname>
<refpurpose>Проверяет, можно ли создать экземпляр класса</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis role="ReflectionClass">
<modifier>public</modifier> <type>bool</type><methodname>ReflectionClass::isInstantiable</methodname>
<void/>
</methodsynopsis>
<para>
Проверяет, можно ли создать экземпляр класса.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования <methodname>ReflectionClass::isInstantiable</methodname></title>
<programlisting role="php">
<![CDATA[
<?php
class C { }
interface iface {
function f1();
}
class ifaceImpl implements iface {
function f1() {}
}
abstract class abstractClass {
function f1() { }
abstract function f2();
}
class D extends abstractClass {
function f2() { }
}
trait T {
function f1() {}
}
class privateConstructor {
private function __construct() { }
}
$classes = array(
"C",
"iface",
"ifaceImpl",
"abstractClass",
"D",
"T",
"privateConstructor",
);
foreach($classes as $class ) {
$reflectionClass = new ReflectionClass($class);
echo "Можно ли создать экземпляр класса $class? ";
var_dump($reflectionClass->isInstantiable());
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
Можно ли создать экземпляр класса C? bool(true)
Можно ли создать экземпляр класса iface? bool(false)
Можно ли создать экземпляр класса ifaceImpl? bool(true)
Можно ли создать экземпляр класса abstractClass? bool(false)
Можно ли создать экземпляр класса D? bool(true)
Можно ли создать экземпляр класса T? bool(false)
Можно ли создать экземпляр класса privateConstructor? bool(false)
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><methodname>ReflectionClass::isInstance</methodname></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->