cvs: phpdoc-el /reference/classobj reference.xml /reference/classobj/functions call-user-method-array.xml call-user-method.xml class-exists.xml
get-class-methods.xml get-class-vars.xml get-class.xml get-declared-classes.xml get-object-vars.xml get-parent-class.xml is-a.xml is-subclass-of.xml
method-exists.xml
| From: | Dimitris Glezos | Date: | Mon, 12 Jan 2004 20:29:36 +0000 |
| Subject: | cvs: phpdoc-el /reference/classobj reference.xml /reference/classobj/functions call-user-method-array.xml call-user-method.xml class-exists.xml get-class-methods.xml get-class-vars.xml get-class.xml get-declared-classes.xml get-object-vars.xml get-parent-class.xml is-a.xml is-subclass-of.xml method-exists.xml |
||
| Groups: | php.doc.el | ||
| Request: | Send a blank email to doc-el+get-38@lists.php.net to get a copy of this message | ||
subbie Mon Jan 12 15:29:36 2004 EDT
Added files:
/phpdoc-el/reference/classobj reference.xml
/phpdoc-el/reference/classobj/functions call-user-method-array.xml
call-user-method.xml
class-exists.xml
get-class-methods.xml
get-class-vars.xml
get-class.xml
get-declared-classes.xml
get-object-vars.xml
get-parent-class.xml
is-a.xml is-subclass-of.xml
method-exists.xml
Log:
added classobj
Index: phpdoc-el/reference/classobj/reference.xml +++ phpdoc-el/reference/classobj/reference.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.11 Maintainer: stratis Status: ready --> <reference id="ref.classobj"> <title>ÓõíáñôÞóåéò ÊëÜóåùí/ÁíôéêåéìÝíùí</title> <titleabbrev>ÊëÜóåéò/Áíôéêåßìåíá</titleabbrev> <partintro> <section id="classobj.intro"> &reftitle.intro; <para> Ïé óõíáñôÞóåéò áõôÝò óáò åðéôñÝðïõí íá áíáêôÞóåôå ðëçñïöïñßåò ãéá ôéò êëÜóåéò êáé ôá óôéãìéüôõðá ôïõò. Ìðïñåßôå íá áíáêôÞóåôå ôï üíïìá ôçò êëÜóçò óôçí ïðïßá áíÞêåé Ýíá áíôéêåßìåíï, êáèþò êáé ôéò ìåôáâëçôÝò êáé ôéò ìåèüäïõò ôïõ. ×ñçóéìïðïéþíôáò áõôÝò ôéò óõíáñôÞóåéò, ìðïñåßôå íá ìÜèåôå ü÷é ìüíï ôçí êëÜóç åíüò áíôéêåéìÝíïõ, áëëÜ êáé ôéò õðåñêëÜóåéò ôïõ (áðü ðïéÜ êëÜóç êëçñïíïìåß ôï áíôéêåßìåíï). </para> </section> <section id="classobj.requirements"> &reftitle.required; &no.requirement; </section> <section id="classobj.installation"> &reftitle.install; &no.install; </section> <section id="classobj.configuration"> &reftitle.runtime; &no.config; </section> <section id="classobj.resources"> &reftitle.resources; &no.resource; </section> <section id="classobj.constants"> &reftitle.constants; &no.constants; </section> <section id="classobj.examples"> &reftitle.examples; <para> Óå áõôü ôï ðáñÜäåéãìá, ðñþôá ïñßæïõìå ìéá êëÜóç-âÜóç êáé ìåôÜ ìéá êëÜóç êëçñïíüìï. Ç êëÜóç-âÜóç ðåñéãñÜöåé Ýíá ãåíéêü ëá÷áíéêü, áí åßíáé âñþóéìï Þ ü÷é, êáé ôï ÷ñþìá ôïõ. Ç êëÜóç êëçñïíüìïò <varname>Spinach</varname> ðñïóèÝôåé ìéá ìÝèïäï ãéá ôï ìáãåßñåìá êáé áêüìá ìéá ðïõ åðéóôñÝöåé áí åßíáé ìáãåéñåìÝíï. </para> <para> <example> <title>classes.inc</title> <programlisting role="php"> <![CDATA[ <?php // êëÜóç-âÜóç ìå ìåôáâëçôÝò êáé ìåèüäïõò class Vegetable { var $edible; var $color; function Vegetable($edible, $color="green") { $this->edible = $edible; $this->color = $color; } function is_edible() { return $this->edible; } function what_color() { return $this->color; } } // ôÝëïò êëÜóçò Vegetable // åðÝêôáóç êëÜóçò-âÜóçò class Spinach extends Vegetable { var $cooked = false; function Spinach() { $this->Vegetable(true, "green"); } function cook_it() { $this->cooked = true; } function is_cooked() { return $this->cooked; } } // ôÝëïò êëÜóçò Spinach ?> ]]> </programlisting> </example> </para> <para> Áêïëïýèùò äçìéïõñãïýìå äõï óôéãìéüôõðá áðü áõôÝò ôéò êëÜóåéò êáé ôõðþíïõìå ðëçñïöïñßåò ãéá áõôÜ, óõìðåñéëáìâáíïìÝíçò ôçò õðåñêëÜóçò ôïõò. Ïñßæïõìå åðßóçò ìåñéêÝò âïçèçôéêÝò óõíáñôÞóåéò, êõñßùò ãéá íá åßíáé êáëáéóèçôéêü ôï ôýðùìá ôùí ìåôáâëçôþí. </para> <para> <example> <title>test_script.php</title> <programlisting role="php"> <![CDATA[ <pre> <?php include "classes.inc"; // âïçèçôéêÝò óõíáñôÞóåéò function print_vars($obj) { $arr = get_object_vars($obj); while (list($prop, $val) = each($arr)) echo "\t$prop = $val\n"; } function print_methods($obj) { $arr = get_class_methods(get_class($obj)); foreach ($arr as $method) echo "\tfunction $method()\n"; } function class_parentage($obj, $class) { if (is_subclass_of($GLOBALS[$obj], $class)) { echo "Object $obj belongs to class " . get_class($$obj); echo " a subclass of $class\n"; } else { echo "Object $obj does not belong to a subclass of $class\n"; } } // äçìéïõñãïýìå 2 óôéãìéüôõðá $veggie = new Vegetable(true, "blue"); $leafy = new Spinach(); // ôõðþíïõìå ðëçñïöïñßåò ãéá áõôÜ ôá óôéãìéüôõðá echo "veggie: CLASS " . get_class($veggie) . "\n"; echo "leafy: CLASS " . get_class($leafy); echo ", PARENT " . get_parent_class($leafy) . "\n"; // ôõðþíïõìå ôéò ìåôáâëçôÝò ôçò êëÜóçò-âÜóçò echo "\nveggie: Properties\n"; print_vars($veggie); // êáé ôéò ìåèüäïõò ôçò êëÜóçò-êëçñïíüìïõ echo "\nleafy: Methods\n"; print_methods($leafy); echo "\nParentage:\n"; class_parentage("leafy", "Spinach"); class_parentage("leafy", "Vegetable"); ?> </pre> ]]> </programlisting> <para> Ìéá óçìáíôéêÞ ðáñáôÞñçóç ó÷åôéêÜ ìå ôï ðéï ðÜíù ðáñÜäåéãìá åßíáé üôé ôï áíôéêåßìåíï <varname>$leafy</varname> åßíáé Ýíá óôéãìéüôõðï ôçò êëÜóçò <classname>Spinach</classname>, ç ïðïßá åßíáé õðïêëÜóç ôïõ <classname>Vegetable</classname>, óõíåðþò ôï ôåëåõôáßï ìÝñïò ôïõ script èá ôõðþóåé: </para> <screen> <![CDATA[ [...] Parentage: Object leafy does not belong to a subclass of Spinach Object leafy belongs to class spinach a subclass of Vegetable ]]> </screen> </example> </para> </section> </partintro> &reference.classobj.functions; </reference> <!-- 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:"../../../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 --> Index: phpdoc-el/reference/classobj/functions/call-user-method-array.xml +++ phpdoc-el/reference/classobj/functions/call-user-method-array.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.4 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.36 --> <refentry id="function.call-user-method-array"> <refnamediv> <refname>call_user_method_array</refname> <refpurpose> Êáëåß ìéá ìÝèïäï ìå Ýíá array áðü ðáñáìÝôñïõò [deprecated] </refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>mixed</type><methodname>call_user_method_array</methodname> <methodparam><type>string</type><parameter>method_name</parameter></methodparam> <methodparam><type>object</type><parameter>obj</parameter></methodparam> <methodparam choice="opt"><type>array</type><parameter>paramarr</parameter></methodparam> </methodsynopsis> <warning> <para> Ç óõíÜñôçóç <function>call_user_method_array</function> åßíáé deprecated áðü ôçí Ýêäïóç PHP 4.1.0, áíôß áõôÞò ÷ñçóéìïðïéÞóôå ôï <function>call_user_func_array</function> ìå ôç óýíôáîç <literal>array(&$obj, "method_name")</literal>. </para> </warning> <para> Êáëåß ôç ìÝèïäï <parameter>method_name</parameter> ôïõ ïñéóìÝíïõ áðü ôï ÷ñÞóôç áíôéêåéìÝíïõ <parameter>obj</parameter>, ÷ñçóéìïðïéþíôáò ôéò ðáñáìÝôñïõò ìÝóá óôï <parameter>paramarr</parameter> array. </para> <para> Äåßôå åðßóçò: <function>call_user_func_array</function>, êáé <function>call_user_func</function>. </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/call-user-method.xml +++ phpdoc-el/reference/classobj/functions/call-user-method.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.7 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.4 --> <refentry id="function.call-user-method"> <refnamediv> <refname>call_user_method</refname> <refpurpose> Êáëåß ìéá ìÝèïäï åíüò áíôéêåéìÝíïõ [deprecated] </refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>mixed</type><methodname>call_user_method</methodname> <methodparam><type>string</type><parameter>method_name</parameter></methodparam> <methodparam><type>object</type><parameter>obj</parameter></methodparam> <methodparam choice="opt"><type>mixed</type><parameter>parameter</parameter></methodparam> <methodparam choice="opt"><type>mixed</type><parameter>...</parameter></methodparam> </methodsynopsis> <warning> <para> Ç óõíÜñôçóç <function>call_user_method</function> åßíáé deprecated áðü ôçí Ýêäïóç PHP 4.1.0. Aíôß áõôÞò ÷ñçóéìïðïéÞóôå ôç <function>call_user_func</function> ìå ôç óýíôáîç <literal>array(&$obj, "method_name")</literal>. </warning> <para> Êáëåß ôç ìÝèïäï <parameter>method_name</parameter> ôïõ ïñéóìÝíïõ áðü ôï ÷ñÞóôç áíôéêåéìÝíïõ <parameter>obj</parameter>. Áêïëïõèåß Ýíá ðáñÜäåéãìá ôçò ÷ñÞóçò ôçò óõíÜñôçóçò, óôï ïðïßï ïñßæïõìå ìéá êëÜóç, äçìéïõñãïýìå Ýíá óôéãìéüôõðï êáé ÷ñçóéìïðïéïýìå ôç óõíÜñôçóç <function>call_user_method</function> ãéá íá êáëÝóïõìå Ýììåóá ôç ìÝèïäï <varname>print_info</varname>. </para> <para> <informalexample> <programlisting role="php"> <![CDATA[ <?php class Country { var $NAME; var $TLD; function Country($name, $tld) { $this->NAME = $name; $this->TLD = $tld; } function print_info($prestr = "") { echo $prestr . "Country: " . $this->NAME . "\n"; echo $prestr . "Top Level Domain: " . $this->TLD . "\n"; } } $cntry = new Country("Peru", "pe"); echo "* Calling the object method directly\n"; $cntry->print_info(); echo "\n* Calling the same method indirectly\n"; call_user_method("print_info", $cntry, "\t"); ?> ]]> </programlisting> </informalexample> </para> <simpara> Äåßôå åðßóçò <function>call_user_func_array</function>, êáé <function>call_user_func</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/class-exists.xml +++ phpdoc-el/reference/classobj/functions/class-exists.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.3 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.11 --> <refentry id="function.class-exists"> <refnamediv> <refname>class_exists</refname> <refpurpose>ÅëÝã÷åé åÜí ç êëÜóç Ý÷åé ïñéóôåß</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>bool</type><methodname>class_exists</methodname> <methodparam><type>string</type><parameter>class_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç åðéóôñÝöåé &true; åÜí ç êëÜóç <parameter>class_name</parameter> Ý÷åé ïñéóôåß, êáé &false; åÜí ü÷é. </para> <simpara> Äåßôå åðßóçò <function>get_declared_classes</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-class-methods.xml +++ phpdoc-el/reference/classobj/functions/get-class-methods.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.6 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.2 --> <refentry id="function.get-class-methods"> <refnamediv> <refname>get_class_methods</refname> <refpurpose>ÅðéóôñÝöåé Ýíá array ìå ôá ïíüìáôá ôùí ìåèüäùí ôçò êëÜóçò</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>array</type><methodname>get_class_methods</methodname> <methodparam><type>mixed</type><parameter>class_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç åðéóôñÝöåé Ýíá array ìå ôá ïíüìáôá ôùí ìåèüäùí ðïõ Ý÷ïõí ïñéóôåß ãéá ôçí êëÜóç <parameter>class_name</parameter>. </para> <note> <para> Áðü ôçí Ýêäïóç PHP 4.0.6, ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ùò ðáñÜìåôñï ôï ßäéï ôï óôéãìéüôõðï áíôß ôïõ ïíüìáôïò ôçò êëÜóçò <parameter>class_name</parameter>. Ãéá ðáñÜäåéãìá: <informalexample> <programlisting role="php"> <![CDATA[ <?php $class_methods = get_class_methods($my_class); // äåßôå ïëüêëçñï ôï ðáñÜäåéãìá ðéï êÜôù ?> ]]> </programlisting> </informalexample> </para> </note> <para> <example> <title>ÐáñÜäåéãìá <function>get_class_methods</function></title> <programlisting role="php"> <![CDATA[ <?php class myclass { // constructor function myclass() { return(true); } // ìÝèïäïò 1 function myfunc1() { return(true); } // ìÝèïäïò 2 function myfunc2() { return(true); } } $my_object = new myclass(); $class_methods = get_class_methods(get_class($my_object)); foreach ($class_methods as $method_name) { echo "$method_name\n"; } ?> ]]> </programlisting> <para> Èá ôõðþóåé: </para> <screen> <![CDATA[ myclass myfunc1 myfunc2 ]]> </screen> </example> </para> <simpara> Äåßôå åðßóçò <function>get_class_vars</function> and <function>get_object_vars</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-class-vars.xml +++ phpdoc-el/reference/classobj/functions/get-class-vars.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.7 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.1 --> <refentry id="function.get-class-vars"> <refnamediv> <refname>get_class_vars</refname> <refpurpose> ÅðéóôñÝöåé Ýíá array ìå ôéò ðñïêáèïñéóìÝíåò ìåôáâëçôÝò ôçò êëÜóçò </refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>array</type><methodname>get_class_vars</methodname> <methodparam><type>string</type><parameter>class_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç áõôÞ åðéóôñÝöåé Ýíá associative array ôùí ðñïêáèïñéóìÝíùí ìåôáâëçôþí ôçò êëÜóçò. Ôá óôïé÷åßá ôïõ array ðïõ åðéóôñÝöåôáé åßíáé ôçò ìïñöÞò <parameter>varname => value</parameter>. </para> <note> <para> Ðñéí áðü ôçí Ýêäïóç PHP 4.2.0, ìåôáâëçôÝò ôçò êëÜóçò ðïõ äåí Ý÷ïõí áñ÷éêïðïéçèåß äåí åðéóôñÝöïíôáé áðü ôçí óõíÜñôçóç <function>get_class_vars</function>. </para> </note> <para> <example> <title>ÐáñÜäåéãìá <function>get_class_vars</function></title> <programlisting role="php"> <![CDATA[ <?php class myclass { var $var1; // ç ìåôáâëçôÞ áõôÞ äåí Ý÷åé áñ÷éêïðïéçèåß... var $var2 = "xyz"; var $var3 = 100; // constructor function myclass() { // áëëáãÞ êÜðïéùí ìåôáâëçôþí $this->var1 = "foo"; $this->var2 = "bar"; return true; } } $my_class = new myclass(); $class_vars = get_class_vars(get_class($my_class)); foreach ($class_vars as $name => $value) { echo "$name : $value\n"; } ?> ]]> </programlisting> <para> Èá ôõðþóåé: </para> <screen> <![CDATA[ // Ðñéí áðü ôçí Ýêäïóç PHP 4.2.0 var2 : xyz var3 : 100 // Áðü ôçí Ýêäïóç PHP 4.2.0 êáé ìåôÜ var1 : var2 : xyz var3 : 100 ]]> </screen> </example> </para> <simpara> Äåßôå åðßóçò <function>get_class_methods</function>, <function>get_object_vars</function> </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-class.xml +++ phpdoc-el/reference/classobj/functions/get-class.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.4 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.4 --> <refentry id="function.get-class"> <refnamediv> <refname>get_class</refname> <refpurpose>ÅðéóôñÝöåé ôï üíïìá ôçò êëÜóçò åíüò áíôéêåéìÝíïõ</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>string</type><methodname>get_class</methodname> <methodparam><type>object</type><parameter>obj</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç áõôÞ åðéóôñÝöåé ôï üíïìá ôçò êëÜóçò ôçò ïðïßáò ôï áíôéêåßìåíï <parameter>obj</parameter> åßíáé Ýíá óôéãìéüôõðï. ÅðéóôñÝöåé &false; áí ôï <parameter>obj</parameter> äåí åßíáé áíôéêåßìåíï. </para> <note> <simpara> Ç óõíÜñôçóç <function>get_class</function> åðéóôñÝöåé óå ìéêñÜ ãñÜììáôá ôéò êëÜóåéò ðïõ Ý÷ïõí ïñéóôåß áðü ôïí ÷ñÞóôç. Ïé êëÜóåéò ðïõ Ý÷ïõí ïñéóôåß áðü ôçí PHP åðéóôñÝöïíôáé ìå ôï áñ÷éêü ôïõò üíïìá, ÷ùñßò áëëáãÞ óôá êåöáëáßá. </simpara> </note> <para> <example> <title>Using <function>get_class</function></title> <programlisting role="php"> <![CDATA[ <?php class foo { function foo() { // óõíÜñôçóç ìå êÜðïéï êþäéêá } function name() { echo "My name is " , get_class($this) , "\n"; } } // äçìéïõñãïýìå Ýíá áíôéêåßìåíï $bar = new foo(); // êëÞóç ôçò óõíÜñôçóçò Ýîù áðü ôï áíôéêåßìåíï echo "Its name is " , get_class($bar) , "\n"; // êáé ìÝóá áðü ôï áíôéêåßìåíï $bar->name(); ?> ]]> </programlisting> <para> Èá ôõðþóåé: </para> <screen> <![CDATA[ Its name is foo My name is foo ]]> </screen> </example> </para> <para> Äåßôå åðßóçò <function>get_parent_class</function>, <function>gettype</function>, êáé <function>is_subclass_of</function>. </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-declared-classes.xml +++ phpdoc-el/reference/classobj/functions/get-declared-classes.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.3 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.11 --> <refentry id="function.get-declared-classes"> <refnamediv> <refname>get_declared_classes</refname> <refpurpose>ÅðéóôñÝöåé Ýíá array ìå ôá ïíüìáôá ôùí êëÜóåùí ðïõ Ý÷ïõí ïñéóôåß</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>array</type><methodname>get_declared_classes</methodname> <void/> </methodsynopsis> <para> Ç óõíÜñôçóç åðéóôñÝöåé Ýíá array ìå ôá ïíüìáôá ôùí êëÜóåùí ðïõ Ý÷ïõí ïñéóôåß óå áõôü ôï script. </para> <note> <para> Óôçí Ýêäïóç PHP 4.0.1pl2, ôñåéò åðéðëÝïí êëÜóåéò åðéóôñÝöïíôáé óôçí áñ÷Þ ôïõ array: <classname>stdClass</classname> (ïñéóìÝíç óôï <filename>Zend/zend.c</filename>), <classname>OverloadedTestClass</classname> (ïñéóìÝíç óôï <filename>ext/standard/basic_functions.c</filename>) êáé <classname>Directory</classname> (ïñéóìÝíç óôï <filename>ext/standard/dir.c</filename>). </para> <para> Óçìåéþóôå åðßóçò üôé áíáëüãùò ôùí libraries ðïõ Ý÷åôå êÜíåé compile óôçí PHP, åðéðñüóèåôåò êëÜóåéò ìðïñåß íá åßíáé ðáñïýóåò. Áõôü óçìáßíåé üôé äåí èá ìðïñåßôå íá ïñßóåôå äéêÝò óáò êëÜóåéò ìå áõôÜ ôá ïíüìáôá. ÕðÜñ÷åé ìéá ëßóôá ìå ôá ïíüìáôá ôùí ðñïêáèïñéóìÝíùí êëÜóåùí óôï êåöÜëáéï <link linkend="reserved.classes">ÐñïêáèïñéóìÝíåò ÊëÜóåéò</link> óôéò ÐñïóèÞêåò. </para> </note> <simpara> Äåßôå åðßóçò <function>class_exists</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-object-vars.xml +++ phpdoc-el/reference/classobj/functions/get-object-vars.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.5 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.1 --> <refentry id="function.get-object-vars"> <refnamediv> <refname>get_object_vars</refname> <refpurpose>ÅðéóôñÝöåé Ýíá associative array ìå ôéò ìåôáâëçôÝò ôïõ áíôéêåéìÝíïõ</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>array</type><methodname>get_object_vars</methodname> <methodparam><type>object</type><parameter>obj</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç åðéóôñÝöåé Ýíá associative array ìå ôéò ìåôáâëçôÝò ðïõ Ý÷ïõí ïñéóôåß óôï áíôéêåßìåíï<parameter>obj</parameter>. </para> <note> <para> Óôéò åêäüóåéò ðñéí áðü ôçí PHP 4.2.0, åÜí ïé ìåôáâëçôÝò ôçò êëÜóçò ôçò ïðïßáò ôï áíôéêåßìåíï <parameter>obj</parameter> åßíáé Ýíá óôéãìéüôõðï äåí Ý÷ïõí áñ÷éêïðïéçèåß, ôüôå äåí åðéóôñÝöïíôáé óôï array. Óôéò åêäüóåéò ìåôÜ ôçí PHP 4.2.0, óôï áíôßóôïé÷ï êëåéäß ôïõ array èá áíáôåèåß ç ôéìÞ <constant>NULL</constant>. </para> </note> <para> <example> <title>×ñÞóç ôçò óõíÜñôçóçò <function>get_object_vars</function></title> <programlisting role="php"> <![CDATA[ <?php class Point2D { var $x, $y; var $label; function Point2D($x, $y) { $this->x = $x; $this->y = $y; } function setLabel($label) { $this->label = $label; } function getPoint() { return array("x" => $this->x, "y" => $this->y, "label" => $this->label); } } // ç ìåôáâëçôÞ "$label" ïñßæåôáé áëëÜ äåí áñ÷éêïðïéåßôáé $p1 = new Point2D(1.233, 3.445); print_r(get_object_vars($p1)); $p1->setLabel("point #1"); print_r(get_object_vars($p1)); ?> ]]> </programlisting> <para> Ôï ðéï ðÜíù ðñüãñáììá èá ôõðþóåé: </para> <screen> <![CDATA[ Array ( [x] => 1.233 [y] => 3.445 [label] => ) Array ( [x] => 1.233 [y] => 3.445 [label] => point #1 ) ]]> </screen> </example> </para> <simpara> Äåßôå åðßóçò <function>get_class_methods</function> êáé <function>get_class_vars</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-parent-class.xml +++ phpdoc-el/reference/classobj/functions/get-parent-class.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.4 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.4 --> <refentry id="function.get-parent-class"> <refnamediv> <refname>get_parent_class</refname> <refpurpose>ÅðéóôñÝöåé ôï üíïìá ôçò õðåñêëÜóçò ãéá ôï áíôéêåßìåíï Þ ôçí êëÜóç</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>string</type><methodname>get_parent_class</methodname> <methodparam><type>mixed</type><parameter>obj</parameter></methodparam> </methodsynopsis> <para> ÅÜí ôï <parameter>obj</parameter> åßíáé áíôéêåßìåíï, ç óõíÜñôçóç åðéóôñÝöåé ôï üíïìá ôçò õðåñêëÜóçò ôçò êëÜóçò ôçò ïðïßáò ôï <parameter>obj</parameter> åßíáé óôéãìéüôõðï. </para> <para> ÅÜí ôï <parameter>obj</parameter> åßíáé string, ç óõíÜñôçóç åðéóôñÝöåé ôï üíïìá ôçò õðåñêëÜóçò ôçò êëÜóçò ìå ôï üíïìá ðïõ õðïäåéêíýåôáé áðü ôï string. Ç ëåéôïõñãéêüôçôá áõôÞ Ý÷åé ðñïóôåèåß áðü ôçí Ýêäïóç PHP 4.0.5. </para> <para> <example> <title>×ñÞóç ôçò óõíÜñôçóçò <function>get_parent_class</function></title> <programlisting role="php"> <![CDATA[ <?php class dad { function dad() { // êþäéêáò ôçò óõíÜñôçóçò åäþ } } class child extends dad { function child() { echo "I'm " , get_parent_class($this) , "'s son\n"; } } class child2 extends dad { function child2() { echo "I'm " , get_parent_class('child2') , "'s son too\n"; } } $foo = new child(); $bar = new child2(); ?> ]]> </programlisting> <para> Ôï ðñüãñáììá èá ôõðþóåé: </para> <screen> <![CDATA[ I'm dad's son I'm dad's son too ]]> </screen> </example> </para> <para> Äåßôå åðßóçò <function>get_class</function> êáé <function>is_subclass_of</function>. </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/is-a.xml +++ phpdoc-el/reference/classobj/functions/is-a.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.3 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.33 --> <refentry id="function.is-a"> <refnamediv> <refname>is_a</refname> <refpurpose> ÅðéóôñÝöåé &true; åÜí ôï áíôéêåßìåíï åßíáé áõôÞò ôçò êëÜóçò Þ åÜí áõôÞ ç êëÜóç åßíáé õðåñêëÜóç ôïõ áíôéêåéìÝíïõ. </refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>bool</type><methodname>is_a</methodname> <methodparam><type>object</type><parameter>object</parameter></methodparam> <methodparam><type>string</type><parameter>class_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç áõôÞ åðéóôñÝöåé &true; åÜí ôï áíôéêåßìåíï åßíáé áõôÞò ôçò êëÜóçò Þ åÜí áõôÞ ç êëÜóç åßíáé õðåñêëÜóç ôïõ áíôéêåéìÝíïõ, åéäÜëëùò åðéóôñÝöåé &false;. </para> <simpara> Äåßôå åðßóçò <function>get_class</function>, <function>get_parent_class</function>, êáé <function>is_subclass_of</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/is-subclass-of.xml +++ phpdoc-el/reference/classobj/functions/is-subclass-of.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.3 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.4 --> <refentry id="function.is-subclass-of"> <refnamediv> <refname>is_subclass_of</refname> <refpurpose> ÅðéóôñÝöåé &true; åÜí áõôÞ ç êëÜóç åßíáé õðåñêëÜóç ôïõ áíôéêåéìÝíïõ </refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>bool</type><methodname>is_subclass_of</methodname> <methodparam><type>object</type><parameter>object</parameter></methodparam> <methodparam><type>string</type><parameter>class_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç áõôÞ åðéóôñÝöåé &true; åÜí ôï áíôéêåßìåíï <parameter>object</parameter> áíÞêåé óå êëÜóç ç ïðïßá åßíáé õðïêëÜóç ôçò <parameter>class_name</parameter>, åéäÜëëùò åðéóôñÝöåé &false;. </para> <simpara> Äåßôå åðßóçò <function>get_class</function>, <function>get_parent_class</function> êáé <function>is_a</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/method-exists.xml +++ phpdoc-el/reference/classobj/functions/method-exists.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.2 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.9 --> <refentry id="function.method-exists"> <refnamediv> <refname>method_exists</refname> <refpurpose>ÅëÝã÷åé åÜí ç ìÝèïäïò Ý÷åé ïñéóôåß óôçí êëÜóç</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>bool</type><methodname>method_exists</methodname> <methodparam><type>object</type><parameter>object</parameter></methodparam> <methodparam><type>string</type><parameter>method_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç åðéóôñÝöåé &true; åÜí ç ìÝèïäïò <parameter>method_name</parameter> Ý÷åé ïñéóôåß ãéá ôï áíôéêåßìåíï <parameter>object</parameter>, åéäÜëëùò åðéóôñÝöåé &false;. </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:"../../../../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 -->
Index: phpdoc-el/reference/classobj/reference.xml +++ phpdoc-el/reference/classobj/reference.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.11 Maintainer: stratis Status: ready --> <reference id="ref.classobj"> <title>ÓõíáñôÞóåéò ÊëÜóåùí/ÁíôéêåéìÝíùí</title> <titleabbrev>ÊëÜóåéò/Áíôéêåßìåíá</titleabbrev> <partintro> <section id="classobj.intro"> &reftitle.intro; <para> Ïé óõíáñôÞóåéò áõôÝò óáò åðéôñÝðïõí íá áíáêôÞóåôå ðëçñïöïñßåò ãéá ôéò êëÜóåéò êáé ôá óôéãìéüôõðá ôïõò. Ìðïñåßôå íá áíáêôÞóåôå ôï üíïìá ôçò êëÜóçò óôçí ïðïßá áíÞêåé Ýíá áíôéêåßìåíï, êáèþò êáé ôéò ìåôáâëçôÝò êáé ôéò ìåèüäïõò ôïõ. ×ñçóéìïðïéþíôáò áõôÝò ôéò óõíáñôÞóåéò, ìðïñåßôå íá ìÜèåôå ü÷é ìüíï ôçí êëÜóç åíüò áíôéêåéìÝíïõ, áëëÜ êáé ôéò õðåñêëÜóåéò ôïõ (áðü ðïéÜ êëÜóç êëçñïíïìåß ôï áíôéêåßìåíï). </para> </section> <section id="classobj.requirements"> &reftitle.required; &no.requirement; </section> <section id="classobj.installation"> &reftitle.install; &no.install; </section> <section id="classobj.configuration"> &reftitle.runtime; &no.config; </section> <section id="classobj.resources"> &reftitle.resources; &no.resource; </section> <section id="classobj.constants"> &reftitle.constants; &no.constants; </section> <section id="classobj.examples"> &reftitle.examples; <para> Óå áõôü ôï ðáñÜäåéãìá, ðñþôá ïñßæïõìå ìéá êëÜóç-âÜóç êáé ìåôÜ ìéá êëÜóç êëçñïíüìï. Ç êëÜóç-âÜóç ðåñéãñÜöåé Ýíá ãåíéêü ëá÷áíéêü, áí åßíáé âñþóéìï Þ ü÷é, êáé ôï ÷ñþìá ôïõ. Ç êëÜóç êëçñïíüìïò <varname>Spinach</varname> ðñïóèÝôåé ìéá ìÝèïäï ãéá ôï ìáãåßñåìá êáé áêüìá ìéá ðïõ åðéóôñÝöåé áí åßíáé ìáãåéñåìÝíï. </para> <para> <example> <title>classes.inc</title> <programlisting role="php"> <![CDATA[ <?php // êëÜóç-âÜóç ìå ìåôáâëçôÝò êáé ìåèüäïõò class Vegetable { var $edible; var $color; function Vegetable($edible, $color="green") { $this->edible = $edible; $this->color = $color; } function is_edible() { return $this->edible; } function what_color() { return $this->color; } } // ôÝëïò êëÜóçò Vegetable // åðÝêôáóç êëÜóçò-âÜóçò class Spinach extends Vegetable { var $cooked = false; function Spinach() { $this->Vegetable(true, "green"); } function cook_it() { $this->cooked = true; } function is_cooked() { return $this->cooked; } } // ôÝëïò êëÜóçò Spinach ?> ]]> </programlisting> </example> </para> <para> Áêïëïýèùò äçìéïõñãïýìå äõï óôéãìéüôõðá áðü áõôÝò ôéò êëÜóåéò êáé ôõðþíïõìå ðëçñïöïñßåò ãéá áõôÜ, óõìðåñéëáìâáíïìÝíçò ôçò õðåñêëÜóçò ôïõò. Ïñßæïõìå åðßóçò ìåñéêÝò âïçèçôéêÝò óõíáñôÞóåéò, êõñßùò ãéá íá åßíáé êáëáéóèçôéêü ôï ôýðùìá ôùí ìåôáâëçôþí. </para> <para> <example> <title>test_script.php</title> <programlisting role="php"> <![CDATA[ <pre> <?php include "classes.inc"; // âïçèçôéêÝò óõíáñôÞóåéò function print_vars($obj) { $arr = get_object_vars($obj); while (list($prop, $val) = each($arr)) echo "\t$prop = $val\n"; } function print_methods($obj) { $arr = get_class_methods(get_class($obj)); foreach ($arr as $method) echo "\tfunction $method()\n"; } function class_parentage($obj, $class) { if (is_subclass_of($GLOBALS[$obj], $class)) { echo "Object $obj belongs to class " . get_class($$obj); echo " a subclass of $class\n"; } else { echo "Object $obj does not belong to a subclass of $class\n"; } } // äçìéïõñãïýìå 2 óôéãìéüôõðá $veggie = new Vegetable(true, "blue"); $leafy = new Spinach(); // ôõðþíïõìå ðëçñïöïñßåò ãéá áõôÜ ôá óôéãìéüôõðá echo "veggie: CLASS " . get_class($veggie) . "\n"; echo "leafy: CLASS " . get_class($leafy); echo ", PARENT " . get_parent_class($leafy) . "\n"; // ôõðþíïõìå ôéò ìåôáâëçôÝò ôçò êëÜóçò-âÜóçò echo "\nveggie: Properties\n"; print_vars($veggie); // êáé ôéò ìåèüäïõò ôçò êëÜóçò-êëçñïíüìïõ echo "\nleafy: Methods\n"; print_methods($leafy); echo "\nParentage:\n"; class_parentage("leafy", "Spinach"); class_parentage("leafy", "Vegetable"); ?> </pre> ]]> </programlisting> <para> Ìéá óçìáíôéêÞ ðáñáôÞñçóç ó÷åôéêÜ ìå ôï ðéï ðÜíù ðáñÜäåéãìá åßíáé üôé ôï áíôéêåßìåíï <varname>$leafy</varname> åßíáé Ýíá óôéãìéüôõðï ôçò êëÜóçò <classname>Spinach</classname>, ç ïðïßá åßíáé õðïêëÜóç ôïõ <classname>Vegetable</classname>, óõíåðþò ôï ôåëåõôáßï ìÝñïò ôïõ script èá ôõðþóåé: </para> <screen> <![CDATA[ [...] Parentage: Object leafy does not belong to a subclass of Spinach Object leafy belongs to class spinach a subclass of Vegetable ]]> </screen> </example> </para> </section> </partintro> &reference.classobj.functions; </reference> <!-- 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:"../../../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 --> Index: phpdoc-el/reference/classobj/functions/call-user-method-array.xml +++ phpdoc-el/reference/classobj/functions/call-user-method-array.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.4 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.36 --> <refentry id="function.call-user-method-array"> <refnamediv> <refname>call_user_method_array</refname> <refpurpose> Êáëåß ìéá ìÝèïäï ìå Ýíá array áðü ðáñáìÝôñïõò [deprecated] </refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>mixed</type><methodname>call_user_method_array</methodname> <methodparam><type>string</type><parameter>method_name</parameter></methodparam> <methodparam><type>object</type><parameter>obj</parameter></methodparam> <methodparam choice="opt"><type>array</type><parameter>paramarr</parameter></methodparam> </methodsynopsis> <warning> <para> Ç óõíÜñôçóç <function>call_user_method_array</function> åßíáé deprecated áðü ôçí Ýêäïóç PHP 4.1.0, áíôß áõôÞò ÷ñçóéìïðïéÞóôå ôï <function>call_user_func_array</function> ìå ôç óýíôáîç <literal>array(&$obj, "method_name")</literal>. </para> </warning> <para> Êáëåß ôç ìÝèïäï <parameter>method_name</parameter> ôïõ ïñéóìÝíïõ áðü ôï ÷ñÞóôç áíôéêåéìÝíïõ <parameter>obj</parameter>, ÷ñçóéìïðïéþíôáò ôéò ðáñáìÝôñïõò ìÝóá óôï <parameter>paramarr</parameter> array. </para> <para> Äåßôå åðßóçò: <function>call_user_func_array</function>, êáé <function>call_user_func</function>. </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/call-user-method.xml +++ phpdoc-el/reference/classobj/functions/call-user-method.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.7 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.4 --> <refentry id="function.call-user-method"> <refnamediv> <refname>call_user_method</refname> <refpurpose> Êáëåß ìéá ìÝèïäï åíüò áíôéêåéìÝíïõ [deprecated] </refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>mixed</type><methodname>call_user_method</methodname> <methodparam><type>string</type><parameter>method_name</parameter></methodparam> <methodparam><type>object</type><parameter>obj</parameter></methodparam> <methodparam choice="opt"><type>mixed</type><parameter>parameter</parameter></methodparam> <methodparam choice="opt"><type>mixed</type><parameter>...</parameter></methodparam> </methodsynopsis> <warning> <para> Ç óõíÜñôçóç <function>call_user_method</function> åßíáé deprecated áðü ôçí Ýêäïóç PHP 4.1.0. Aíôß áõôÞò ÷ñçóéìïðïéÞóôå ôç <function>call_user_func</function> ìå ôç óýíôáîç <literal>array(&$obj, "method_name")</literal>. </warning> <para> Êáëåß ôç ìÝèïäï <parameter>method_name</parameter> ôïõ ïñéóìÝíïõ áðü ôï ÷ñÞóôç áíôéêåéìÝíïõ <parameter>obj</parameter>. Áêïëïõèåß Ýíá ðáñÜäåéãìá ôçò ÷ñÞóçò ôçò óõíÜñôçóçò, óôï ïðïßï ïñßæïõìå ìéá êëÜóç, äçìéïõñãïýìå Ýíá óôéãìéüôõðï êáé ÷ñçóéìïðïéïýìå ôç óõíÜñôçóç <function>call_user_method</function> ãéá íá êáëÝóïõìå Ýììåóá ôç ìÝèïäï <varname>print_info</varname>. </para> <para> <informalexample> <programlisting role="php"> <![CDATA[ <?php class Country { var $NAME; var $TLD; function Country($name, $tld) { $this->NAME = $name; $this->TLD = $tld; } function print_info($prestr = "") { echo $prestr . "Country: " . $this->NAME . "\n"; echo $prestr . "Top Level Domain: " . $this->TLD . "\n"; } } $cntry = new Country("Peru", "pe"); echo "* Calling the object method directly\n"; $cntry->print_info(); echo "\n* Calling the same method indirectly\n"; call_user_method("print_info", $cntry, "\t"); ?> ]]> </programlisting> </informalexample> </para> <simpara> Äåßôå åðßóçò <function>call_user_func_array</function>, êáé <function>call_user_func</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/class-exists.xml +++ phpdoc-el/reference/classobj/functions/class-exists.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.3 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.11 --> <refentry id="function.class-exists"> <refnamediv> <refname>class_exists</refname> <refpurpose>ÅëÝã÷åé åÜí ç êëÜóç Ý÷åé ïñéóôåß</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>bool</type><methodname>class_exists</methodname> <methodparam><type>string</type><parameter>class_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç åðéóôñÝöåé &true; åÜí ç êëÜóç <parameter>class_name</parameter> Ý÷åé ïñéóôåß, êáé &false; åÜí ü÷é. </para> <simpara> Äåßôå åðßóçò <function>get_declared_classes</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-class-methods.xml +++ phpdoc-el/reference/classobj/functions/get-class-methods.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.6 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.2 --> <refentry id="function.get-class-methods"> <refnamediv> <refname>get_class_methods</refname> <refpurpose>ÅðéóôñÝöåé Ýíá array ìå ôá ïíüìáôá ôùí ìåèüäùí ôçò êëÜóçò</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>array</type><methodname>get_class_methods</methodname> <methodparam><type>mixed</type><parameter>class_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç åðéóôñÝöåé Ýíá array ìå ôá ïíüìáôá ôùí ìåèüäùí ðïõ Ý÷ïõí ïñéóôåß ãéá ôçí êëÜóç <parameter>class_name</parameter>. </para> <note> <para> Áðü ôçí Ýêäïóç PHP 4.0.6, ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ùò ðáñÜìåôñï ôï ßäéï ôï óôéãìéüôõðï áíôß ôïõ ïíüìáôïò ôçò êëÜóçò <parameter>class_name</parameter>. Ãéá ðáñÜäåéãìá: <informalexample> <programlisting role="php"> <![CDATA[ <?php $class_methods = get_class_methods($my_class); // äåßôå ïëüêëçñï ôï ðáñÜäåéãìá ðéï êÜôù ?> ]]> </programlisting> </informalexample> </para> </note> <para> <example> <title>ÐáñÜäåéãìá <function>get_class_methods</function></title> <programlisting role="php"> <![CDATA[ <?php class myclass { // constructor function myclass() { return(true); } // ìÝèïäïò 1 function myfunc1() { return(true); } // ìÝèïäïò 2 function myfunc2() { return(true); } } $my_object = new myclass(); $class_methods = get_class_methods(get_class($my_object)); foreach ($class_methods as $method_name) { echo "$method_name\n"; } ?> ]]> </programlisting> <para> Èá ôõðþóåé: </para> <screen> <![CDATA[ myclass myfunc1 myfunc2 ]]> </screen> </example> </para> <simpara> Äåßôå åðßóçò <function>get_class_vars</function> and <function>get_object_vars</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-class-vars.xml +++ phpdoc-el/reference/classobj/functions/get-class-vars.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.7 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.1 --> <refentry id="function.get-class-vars"> <refnamediv> <refname>get_class_vars</refname> <refpurpose> ÅðéóôñÝöåé Ýíá array ìå ôéò ðñïêáèïñéóìÝíåò ìåôáâëçôÝò ôçò êëÜóçò </refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>array</type><methodname>get_class_vars</methodname> <methodparam><type>string</type><parameter>class_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç áõôÞ åðéóôñÝöåé Ýíá associative array ôùí ðñïêáèïñéóìÝíùí ìåôáâëçôþí ôçò êëÜóçò. Ôá óôïé÷åßá ôïõ array ðïõ åðéóôñÝöåôáé åßíáé ôçò ìïñöÞò <parameter>varname => value</parameter>. </para> <note> <para> Ðñéí áðü ôçí Ýêäïóç PHP 4.2.0, ìåôáâëçôÝò ôçò êëÜóçò ðïõ äåí Ý÷ïõí áñ÷éêïðïéçèåß äåí åðéóôñÝöïíôáé áðü ôçí óõíÜñôçóç <function>get_class_vars</function>. </para> </note> <para> <example> <title>ÐáñÜäåéãìá <function>get_class_vars</function></title> <programlisting role="php"> <![CDATA[ <?php class myclass { var $var1; // ç ìåôáâëçôÞ áõôÞ äåí Ý÷åé áñ÷éêïðïéçèåß... var $var2 = "xyz"; var $var3 = 100; // constructor function myclass() { // áëëáãÞ êÜðïéùí ìåôáâëçôþí $this->var1 = "foo"; $this->var2 = "bar"; return true; } } $my_class = new myclass(); $class_vars = get_class_vars(get_class($my_class)); foreach ($class_vars as $name => $value) { echo "$name : $value\n"; } ?> ]]> </programlisting> <para> Èá ôõðþóåé: </para> <screen> <![CDATA[ // Ðñéí áðü ôçí Ýêäïóç PHP 4.2.0 var2 : xyz var3 : 100 // Áðü ôçí Ýêäïóç PHP 4.2.0 êáé ìåôÜ var1 : var2 : xyz var3 : 100 ]]> </screen> </example> </para> <simpara> Äåßôå åðßóçò <function>get_class_methods</function>, <function>get_object_vars</function> </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-class.xml +++ phpdoc-el/reference/classobj/functions/get-class.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.4 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.4 --> <refentry id="function.get-class"> <refnamediv> <refname>get_class</refname> <refpurpose>ÅðéóôñÝöåé ôï üíïìá ôçò êëÜóçò åíüò áíôéêåéìÝíïõ</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>string</type><methodname>get_class</methodname> <methodparam><type>object</type><parameter>obj</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç áõôÞ åðéóôñÝöåé ôï üíïìá ôçò êëÜóçò ôçò ïðïßáò ôï áíôéêåßìåíï <parameter>obj</parameter> åßíáé Ýíá óôéãìéüôõðï. ÅðéóôñÝöåé &false; áí ôï <parameter>obj</parameter> äåí åßíáé áíôéêåßìåíï. </para> <note> <simpara> Ç óõíÜñôçóç <function>get_class</function> åðéóôñÝöåé óå ìéêñÜ ãñÜììáôá ôéò êëÜóåéò ðïõ Ý÷ïõí ïñéóôåß áðü ôïí ÷ñÞóôç. Ïé êëÜóåéò ðïõ Ý÷ïõí ïñéóôåß áðü ôçí PHP åðéóôñÝöïíôáé ìå ôï áñ÷éêü ôïõò üíïìá, ÷ùñßò áëëáãÞ óôá êåöáëáßá. </simpara> </note> <para> <example> <title>Using <function>get_class</function></title> <programlisting role="php"> <![CDATA[ <?php class foo { function foo() { // óõíÜñôçóç ìå êÜðïéï êþäéêá } function name() { echo "My name is " , get_class($this) , "\n"; } } // äçìéïõñãïýìå Ýíá áíôéêåßìåíï $bar = new foo(); // êëÞóç ôçò óõíÜñôçóçò Ýîù áðü ôï áíôéêåßìåíï echo "Its name is " , get_class($bar) , "\n"; // êáé ìÝóá áðü ôï áíôéêåßìåíï $bar->name(); ?> ]]> </programlisting> <para> Èá ôõðþóåé: </para> <screen> <![CDATA[ Its name is foo My name is foo ]]> </screen> </example> </para> <para> Äåßôå åðßóçò <function>get_parent_class</function>, <function>gettype</function>, êáé <function>is_subclass_of</function>. </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-declared-classes.xml +++ phpdoc-el/reference/classobj/functions/get-declared-classes.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.3 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.11 --> <refentry id="function.get-declared-classes"> <refnamediv> <refname>get_declared_classes</refname> <refpurpose>ÅðéóôñÝöåé Ýíá array ìå ôá ïíüìáôá ôùí êëÜóåùí ðïõ Ý÷ïõí ïñéóôåß</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>array</type><methodname>get_declared_classes</methodname> <void/> </methodsynopsis> <para> Ç óõíÜñôçóç åðéóôñÝöåé Ýíá array ìå ôá ïíüìáôá ôùí êëÜóåùí ðïõ Ý÷ïõí ïñéóôåß óå áõôü ôï script. </para> <note> <para> Óôçí Ýêäïóç PHP 4.0.1pl2, ôñåéò åðéðëÝïí êëÜóåéò åðéóôñÝöïíôáé óôçí áñ÷Þ ôïõ array: <classname>stdClass</classname> (ïñéóìÝíç óôï <filename>Zend/zend.c</filename>), <classname>OverloadedTestClass</classname> (ïñéóìÝíç óôï <filename>ext/standard/basic_functions.c</filename>) êáé <classname>Directory</classname> (ïñéóìÝíç óôï <filename>ext/standard/dir.c</filename>). </para> <para> Óçìåéþóôå åðßóçò üôé áíáëüãùò ôùí libraries ðïõ Ý÷åôå êÜíåé compile óôçí PHP, åðéðñüóèåôåò êëÜóåéò ìðïñåß íá åßíáé ðáñïýóåò. Áõôü óçìáßíåé üôé äåí èá ìðïñåßôå íá ïñßóåôå äéêÝò óáò êëÜóåéò ìå áõôÜ ôá ïíüìáôá. ÕðÜñ÷åé ìéá ëßóôá ìå ôá ïíüìáôá ôùí ðñïêáèïñéóìÝíùí êëÜóåùí óôï êåöÜëáéï <link linkend="reserved.classes">ÐñïêáèïñéóìÝíåò ÊëÜóåéò</link> óôéò ÐñïóèÞêåò. </para> </note> <simpara> Äåßôå åðßóçò <function>class_exists</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-object-vars.xml +++ phpdoc-el/reference/classobj/functions/get-object-vars.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.5 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.1 --> <refentry id="function.get-object-vars"> <refnamediv> <refname>get_object_vars</refname> <refpurpose>ÅðéóôñÝöåé Ýíá associative array ìå ôéò ìåôáâëçôÝò ôïõ áíôéêåéìÝíïõ</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>array</type><methodname>get_object_vars</methodname> <methodparam><type>object</type><parameter>obj</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç åðéóôñÝöåé Ýíá associative array ìå ôéò ìåôáâëçôÝò ðïõ Ý÷ïõí ïñéóôåß óôï áíôéêåßìåíï<parameter>obj</parameter>. </para> <note> <para> Óôéò åêäüóåéò ðñéí áðü ôçí PHP 4.2.0, åÜí ïé ìåôáâëçôÝò ôçò êëÜóçò ôçò ïðïßáò ôï áíôéêåßìåíï <parameter>obj</parameter> åßíáé Ýíá óôéãìéüôõðï äåí Ý÷ïõí áñ÷éêïðïéçèåß, ôüôå äåí åðéóôñÝöïíôáé óôï array. Óôéò åêäüóåéò ìåôÜ ôçí PHP 4.2.0, óôï áíôßóôïé÷ï êëåéäß ôïõ array èá áíáôåèåß ç ôéìÞ <constant>NULL</constant>. </para> </note> <para> <example> <title>×ñÞóç ôçò óõíÜñôçóçò <function>get_object_vars</function></title> <programlisting role="php"> <![CDATA[ <?php class Point2D { var $x, $y; var $label; function Point2D($x, $y) { $this->x = $x; $this->y = $y; } function setLabel($label) { $this->label = $label; } function getPoint() { return array("x" => $this->x, "y" => $this->y, "label" => $this->label); } } // ç ìåôáâëçôÞ "$label" ïñßæåôáé áëëÜ äåí áñ÷éêïðïéåßôáé $p1 = new Point2D(1.233, 3.445); print_r(get_object_vars($p1)); $p1->setLabel("point #1"); print_r(get_object_vars($p1)); ?> ]]> </programlisting> <para> Ôï ðéï ðÜíù ðñüãñáììá èá ôõðþóåé: </para> <screen> <![CDATA[ Array ( [x] => 1.233 [y] => 3.445 [label] => ) Array ( [x] => 1.233 [y] => 3.445 [label] => point #1 ) ]]> </screen> </example> </para> <simpara> Äåßôå åðßóçò <function>get_class_methods</function> êáé <function>get_class_vars</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/get-parent-class.xml +++ phpdoc-el/reference/classobj/functions/get-parent-class.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.4 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.4 --> <refentry id="function.get-parent-class"> <refnamediv> <refname>get_parent_class</refname> <refpurpose>ÅðéóôñÝöåé ôï üíïìá ôçò õðåñêëÜóçò ãéá ôï áíôéêåßìåíï Þ ôçí êëÜóç</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>string</type><methodname>get_parent_class</methodname> <methodparam><type>mixed</type><parameter>obj</parameter></methodparam> </methodsynopsis> <para> ÅÜí ôï <parameter>obj</parameter> åßíáé áíôéêåßìåíï, ç óõíÜñôçóç åðéóôñÝöåé ôï üíïìá ôçò õðåñêëÜóçò ôçò êëÜóçò ôçò ïðïßáò ôï <parameter>obj</parameter> åßíáé óôéãìéüôõðï. </para> <para> ÅÜí ôï <parameter>obj</parameter> åßíáé string, ç óõíÜñôçóç åðéóôñÝöåé ôï üíïìá ôçò õðåñêëÜóçò ôçò êëÜóçò ìå ôï üíïìá ðïõ õðïäåéêíýåôáé áðü ôï string. Ç ëåéôïõñãéêüôçôá áõôÞ Ý÷åé ðñïóôåèåß áðü ôçí Ýêäïóç PHP 4.0.5. </para> <para> <example> <title>×ñÞóç ôçò óõíÜñôçóçò <function>get_parent_class</function></title> <programlisting role="php"> <![CDATA[ <?php class dad { function dad() { // êþäéêáò ôçò óõíÜñôçóçò åäþ } } class child extends dad { function child() { echo "I'm " , get_parent_class($this) , "'s son\n"; } } class child2 extends dad { function child2() { echo "I'm " , get_parent_class('child2') , "'s son too\n"; } } $foo = new child(); $bar = new child2(); ?> ]]> </programlisting> <para> Ôï ðñüãñáììá èá ôõðþóåé: </para> <screen> <![CDATA[ I'm dad's son I'm dad's son too ]]> </screen> </example> </para> <para> Äåßôå åðßóçò <function>get_class</function> êáé <function>is_subclass_of</function>. </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/is-a.xml +++ phpdoc-el/reference/classobj/functions/is-a.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.3 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.33 --> <refentry id="function.is-a"> <refnamediv> <refname>is_a</refname> <refpurpose> ÅðéóôñÝöåé &true; åÜí ôï áíôéêåßìåíï åßíáé áõôÞò ôçò êëÜóçò Þ åÜí áõôÞ ç êëÜóç åßíáé õðåñêëÜóç ôïõ áíôéêåéìÝíïõ. </refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>bool</type><methodname>is_a</methodname> <methodparam><type>object</type><parameter>object</parameter></methodparam> <methodparam><type>string</type><parameter>class_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç áõôÞ åðéóôñÝöåé &true; åÜí ôï áíôéêåßìåíï åßíáé áõôÞò ôçò êëÜóçò Þ åÜí áõôÞ ç êëÜóç åßíáé õðåñêëÜóç ôïõ áíôéêåéìÝíïõ, åéäÜëëùò åðéóôñÝöåé &false;. </para> <simpara> Äåßôå åðßóçò <function>get_class</function>, <function>get_parent_class</function>, êáé <function>is_subclass_of</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/is-subclass-of.xml +++ phpdoc-el/reference/classobj/functions/is-subclass-of.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.3 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.4 --> <refentry id="function.is-subclass-of"> <refnamediv> <refname>is_subclass_of</refname> <refpurpose> ÅðéóôñÝöåé &true; åÜí áõôÞ ç êëÜóç åßíáé õðåñêëÜóç ôïõ áíôéêåéìÝíïõ </refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>bool</type><methodname>is_subclass_of</methodname> <methodparam><type>object</type><parameter>object</parameter></methodparam> <methodparam><type>string</type><parameter>class_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç áõôÞ åðéóôñÝöåé &true; åÜí ôï áíôéêåßìåíï <parameter>object</parameter> áíÞêåé óå êëÜóç ç ïðïßá åßíáé õðïêëÜóç ôçò <parameter>class_name</parameter>, åéäÜëëùò åðéóôñÝöåé &false;. </para> <simpara> Äåßôå åðßóçò <function>get_class</function>, <function>get_parent_class</function> êáé <function>is_a</function>. </simpara> </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:"../../../../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 --> Index: phpdoc-el/reference/classobj/functions/method-exists.xml +++ phpdoc-el/reference/classobj/functions/method-exists.xml <?xml version="1.0" encoding="iso-8859-7"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.2 Maintainer: stratis Status: ready --> <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.9 --> <refentry id="function.method-exists"> <refnamediv> <refname>method_exists</refname> <refpurpose>ÅëÝã÷åé åÜí ç ìÝèïäïò Ý÷åé ïñéóôåß óôçí êëÜóç</refpurpose> </refnamediv> <refsect1> <title>ÐåñéãñáöÞ</title> <methodsynopsis> <type>bool</type><methodname>method_exists</methodname> <methodparam><type>object</type><parameter>object</parameter></methodparam> <methodparam><type>string</type><parameter>method_name</parameter></methodparam> </methodsynopsis> <para> Ç óõíÜñôçóç åðéóôñÝöåé &true; åÜí ç ìÝèïäïò <parameter>method_name</parameter> Ý÷åé ïñéóôåß ãéá ôï áíôéêåßìåíï <parameter>object</parameter>, åéäÜëëùò åðéóôñÝöåé &false;. </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:"../../../../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 -->