aidan           Sat Sep 25 05:06:38 2004 EDT

  Modified files:              
    /phpdoc/en/reference/classobj/functions     class-exists.xml 
  Log:
  Added simple example
  Cleaned initial example
  Added links to autoload
  
http://cvs.php.net/diff.php/phpdoc/en/reference/classobj/functions/class-exists.xml?r1=1.5&r2=1.6&ty=u
Index: phpdoc/en/reference/classobj/functions/class-exists.xml
diff -u phpdoc/en/reference/classobj/functions/class-exists.xml:1.5 
phpdoc/en/reference/classobj/functions/class-exists.xml:1.6
--- phpdoc/en/reference/classobj/functions/class-exists.xml:1.5 Thu Jul  1 23:07:07 
2004
+++ phpdoc/en/reference/classobj/functions/class-exists.xml     Sat Sep 25 05:06:35 
2004
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.5 $ -->
+<!-- $Revision: 1.6 $ -->
 <!-- splitted from ./en/functions/classobj.xml, last change in rev 1.11 -->
   <refentry id="function.class-exists">
    <refnamediv>
@@ -8,26 +8,37 @@
    </refnamediv>
    <refsect1>
     <title>Description</title>
-     <methodsynopsis>
-      <type>bool</type><methodname>class_exists</methodname>
-      <methodparam><type>string</type><parameter>class_name</parameter></methodparam>
-      <methodparam 
choice="opt"><type>bool</type><parameter>autoload</parameter></methodparam>
-     </methodsynopsis>
-    <note>
-     <para>
-      The <parameter>autoload</parameter> parameter was added in PHP 5
-     </para>
-    </note>
+    <methodsynopsis>
+     <type>bool</type><methodname>class_exists</methodname>
+     <methodparam><type>string</type><parameter>class_name</parameter></methodparam>
+     <methodparam 
choice="opt"><type>bool</type><parameter>autoload</parameter></methodparam>
+    </methodsynopsis>
     <para>
      This function returns &true; if the class given by
      <parameter>class_name</parameter> has been defined,
      &false; otherwise.
     </para>
     <para>
-    <function>class_exists</function> will attempt to call __autoload by
-    default, if you don't want <function>class_exists</function> to 
-    call __autoload(), you can set the parameter <parameter>autoload</parameter>
-    to &false;.
+     <example>
+      <title><function>class_exists</function> example</title>
+      <programlisting role="php">
+<![CDATA[
+<?php
+// Check the class exists before trying to use it
+if (class_exists('MyClass')) {
+    $myclass = new MyClass();
+}
+
+?>
+]]>
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     <function>class_exists</function> will attempt to call &link.autoload; by
+     default, if you don't want <function>class_exists</function> to 
+     call &link.autoload;, you can set the parameter <parameter>autoload</parameter>
+     to &false;.
     </para>
     <para>
      <example>
@@ -35,26 +46,33 @@
       <programlisting role="php">
 <![CDATA[
 <?php
-    function __autoload($class) {
-        include($class . '.php');
+function __autoload($class)
+{
+    include($class . '.php');
 
-        /* Check to see it the include defined the class */
-        if ( !class_exists($class, false) ) {
-           trigger_error("Unable to load class $class", E_USER_ERROR);
-        }
+    // Check to see if the include declared the class
+    if (!class_exists($class, false)) {
+        trigger_error("Unable to load class: $class", E_USER_WARNING);
     }
+}
     
-    if( class_exists('MyClass') ) {
-        $myclass = new MyClass();
-    }
+if (class_exists('MyClass')) {
+    $myclass = new MyClass();
+}
 
 ?>
 ]]>
       </programlisting>
      </example>
     </para>
+    <note>
+     <para>
+      The <parameter>autoload</parameter> parameter was added in PHP 5
+     </para>
+    </note>
     <simpara>
-     See also <function>get_declared_classes</function>.
+     See also <function>interface_exists</function>, and
+     <function>get_declared_classes</function>.
     </simpara>
    </refsect1>
   </refentry>

Reply via email to