aidan           Wed Sep 29 11:46:16 2004 EDT

  Modified files:              
    /phpdoc/en/language/oop5    exceptions.xml 
  Log:
  Reworked examples
  
http://cvs.php.net/diff.php/phpdoc/en/language/oop5/exceptions.xml?r1=1.4&r2=1.5&ty=u
Index: phpdoc/en/language/oop5/exceptions.xml
diff -u phpdoc/en/language/oop5/exceptions.xml:1.4 
phpdoc/en/language/oop5/exceptions.xml:1.5
--- phpdoc/en/language/oop5/exceptions.xml:1.4  Thu Aug 26 01:40:29 2004
+++ phpdoc/en/language/oop5/exceptions.xml      Wed Sep 29 11:46:16 2004
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.4 $ -->
+<!-- $Revision: 1.5 $ -->
  <sect1 id="language.oop5.exceptions">
   <title>Exceptions</title>
 
@@ -23,17 +23,16 @@
 <![CDATA[
 <?php
 try {
-  $error = 'Always throw this error';
-  throw new Exception($error);
+    $error = 'Always throw this error';
+    throw new Exception($error);
 
-  // code following an exception isn't executed.
-  echo 'Never executed';
-}
-catch (Exception $e) {
-  echo "Caught exception: ",  $e, "\n";
+    // code following an exception isn't executed.
+    echo 'Never executed';
+} catch (Exception $e) {
+    echo "Caught exception: ",  $e, "\n";
 }
 
-/* continue execution */
+// Continue execution
 ?>
 ]]>
     </programlisting>
@@ -52,23 +51,21 @@
 <![CDATA[
 <?php
 class Exception {
+    protected $message = 'Unknown exception';   // exception message
+    protected $code = 0;                        // user defined exception code
+    protected $file;                            // source filename of exception
+    protected $line;                            // source line of exception
+
+    function __construct($message = null, $code = 0);
+
+    final function getMessage();                // message of exception 
+    final function getCode();                   // code of exception
+    final function getFile();                   // source filename
+    final function getTrace();                  // an array of the backtrace()
+    final function getTraceAsString();          // formated string of trace
 
-  protected $message = 'Unknown exception'; // exception message
-  protected $code = 0;                      // user defined exception code
-  protected $file;                          // source filename of exception
-  protected $line;                          // source line of exception
-
-  function __construct(string $message=NULL, int code=0);
-
-  final function getMessage();              // message of exception 
-  final function getCode();                 // code of exception
-  final function getFile();                 // source filename
-  final function getTrace();                // an array of the backtrace()
-  final function getTraceAsString();        // formated string of trace
-
-  /* Overrideable */
-  function _toString();                     // formated string for display
-   
+    /* Overrideable */
+    function _toString();                       // formated string for display
 }
 ?>
 ]]>
@@ -88,112 +85,115 @@
     <programlisting role="php">
 <![CDATA[
 <?php
-
+/**
+ * Define a custom exception class
+ */
 class MyException extends Exception {
 
-  /* Redefine the exception so message isn't optional */
-  public function __construct($message, $code = 0) {
-
-    // custom stuff you want to do..
-    // ...
+    // Redefine the exception so message isn't optional
+    public function __construct($message, $code = 0) {
+        // some code
     
-    /* make sure everything is assigned properly */
-    parent::__construct($message, $code);
-  }
-
-  /* custom string representation of object */
-  public function __toString() {
-    return __CLASS__ . ": [{$this->code}]: {$this->message}\n";
-  }
-
-  public function customFunction() {
-    echo "A Custom function for this type of exception\n";
-  }
-
-}
-
-class TestException {
-
-  public $var;
-
-  const THROW_NONE    = 0;
-  const THROW_CUSTOM  = 1;
-  const THROW_DEFAULT = 2;
-
+        // make sure everything is assigned properly
+        parent::__construct($message, $code);
+    }
 
-  function __construct($avalue = self::THROW_NONE) {
+    // custom string representation of object */
+    public function __toString() {
+        return __CLASS__ . ": [{$this->code}]: {$this->message}\n";
+    }
 
-    switch ($avalue) {
-      case self::THROW_CUSTOM:
-        // throw custom exception
-        throw new MyException('1 is an invalid parameter', 5);
-        break;
+    public function customFunction() {
+        echo "A Custom function for this type of exception\n";
+    }
+}
 
-      case self::THROW_DEFAULT:
-        // throw default one.
-        throw new Exception('2 isnt allowed as a parameter', 6);
 
-        break;
+/**
+ * Create a class to test the exception
+ */
+class TestException {
 
-      default: 
-        // No exception, object will be created.
-        $this->var = $avalue;
-        break;
+    public $var;
 
+    const THROW_NONE    = 0;
+    const THROW_CUSTOM  = 1;
+    const THROW_DEFAULT = 2;
+
+    function __construct($avalue = self::THROW_NONE) {
+
+        switch ($avalue) {
+            case self::THROW_CUSTOM:
+                // throw custom exception
+                throw new MyException('1 is an invalid parameter', 5);
+                break;
+
+            case self::THROW_DEFAULT:
+                // throw default one.
+                throw new Exception('2 isnt allowed as a parameter', 6);
+                break;
+
+            default: 
+                // No exception, object will be created.
+                $this->var = $avalue;
+                break;
+        }
     }
-
-  }
-
 }
 
-$o = null;
 
+// Example 1
 try {
-  $o = new TestException(TestException::THROW_CUSTOM);
-}
-catch (MyException $e) {            /* Will be caught */
-  echo "Caught my exception\n", $e;
-  $e->customFunction();
+    $o = new TestException(TestException::THROW_CUSTOM);
+} catch (MyException $e) {      // Will be caught
+    echo "Caught my exception\n", $e;
+    $e->customFunction();
+} catch (Exception $e) {        // Skipped
+    echo "Caught Default Exception\n", $e;
 }
-catch (Exception $e) {              /* Skipped */
-  echo "Caught Default Exception\n", $e;
-}
-var_dump($o);                       /* continue execution */
+
+// Continue execution
+var_dump($o);
 echo "\n\n";
 
+
+// Example 2
 try {
-  $o = new TestException(TestException::THROW_DEFAULT);
-}
-catch (MyException $e) {            /* Doesn't match this type */
-  echo "Caught my exception\n", $e;
-  $e->customFunction();
+    $o = new TestException(TestException::THROW_DEFAULT);
+} catch (MyException $e) {      // Doesn't match this type
+    echo "Caught my exception\n", $e;
+    $e->customFunction();
+} catch (Exception $e) {        // Will be caught
+    echo "Caught Default Exception\n", $e;
 }
-catch (Exception $e) {              /* Will be caught */
-  echo "Caught Default Exception\n", $e;
-}
-var_dump($o);                       /* continue execution */
+
+// Continue execution
+var_dump($o);
 echo "\n\n";
 
 
+// Example 3
 try {
-  $o = new TestException(TestException::THROW_CUSTOM);
+    $o = new TestException(TestException::THROW_CUSTOM);
+} catch (Exception $e) {        // Will be caught
+    echo "Default Exception caught\n", $e;
 }
-catch (Exception $e) {              /* Will be caught */
-  echo "Default Exception caught\n", $e;
-}
-var_dump($o);                       /* continue execution */
+
+// Continue execution
+var_dump($o);
 echo "\n\n";
 
+
+// Example 4
 try {
-  $o = new TestException();
-}
-catch (Exception $e) {              /* skipped, no exception */
-  echo "Default Exception caught\n", $e;
+    $o = new TestException();
+} catch (Exception $e) {        // Skipped, no exception
+    echo "Default Exception caught\n", $e;
 }
-var_dump($o);                       /* continue execution */
-echo "\n\n";
-
 
+// Continue execution
+var_dump($o);
+echo "\n\n";
 ]]>
     </programlisting>
    </example>

Reply via email to