language/predefined/error/getprevious.xml
09c49da6f0167fcdfe53a76e3ea28ecfc0eb337b
...
...
@@ -0,0 +1,104 @@
1
+
<?xml version="1.0" encoding="utf-8"?>
2
+
<!-- $Revision$ -->
3
+
<refentry xml:id="error.getprevious" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
4
+
<refnamediv>
5
+
<refname>Error::getPrevious</refname>
6
+
<refpurpose>Returns previous Throwable</refpurpose>
7
+
</refnamediv>
8
+
9
+
<refsect1 role="description">
10
+
&reftitle.description;
11
+
<methodsynopsis role="Error">
12
+
<modifier>final</modifier> <modifier>public</modifier> <type class="union"><type>Throwable</type><type>null</type></type><methodname>Error::getPrevious</methodname>
13
+
<void/>
14
+
</methodsynopsis>
15
+
<para>
16
+
Returns previous Throwable (the third parameter of <methodname>Error::__construct</methodname>).
17
+
</para>
18
+
</refsect1>
19
+
20
+
<refsect1 role="parameters">
21
+
&reftitle.parameters;
22
+
&no.function.parameters;
23
+
</refsect1>
24
+
25
+
<refsect1 role="returnvalues">
26
+
&reftitle.returnvalues;
27
+
<para>
28
+
Returns the previous <classname>Throwable</classname> if available
29
+
or &null; otherwise.
30
+
</para>
31
+
</refsect1>
32
+

33
+
<refsect1 role="examples">
34
+
&reftitle.examples;
35
+
<para>
36
+
<example>
37
+
<title><methodname>Error::getPrevious</methodname> example</title>
38
+
<para>
39
+
Looping over, and printing out, error trace.
40
+
</para>
41
+
<programlisting role="php">
42
+
<![CDATA[
43
+
<?php
44
+
class MyCustomError extends Error {}
45
+

46
+
function doStuff() {
47
+
try {
48
+
throw new InvalidArgumentError("You are doing it wrong!", 112);
49
+
} catch(Error $e) {
50
+
throw new MyCustomError("Something happened", 911, $e);
51
+
}
52
+
}
53
+

54
+

55
+
try {
56
+
doStuff();
57
+
} catch(Error $e) {
58
+
do {
59
+
printf("%s:%d %s (%d) [%s]\n", $e->getFile(), $e->getLine(), $e->getMessage(), $e->getCode(), get_class($e));
60
+
} while($e = $e->getPrevious());
61
+
}
62
+
?>
63
+
]]>
64
+
</programlisting>
65
+
&example.outputs.similar;
66
+
<screen>
67
+
<![CDATA[
68
+
/home/bjori/ex.php:8 Something happened (911) [MyCustomError]
69
+
/home/bjori/ex.php:6 You are doing it wrong! (112) [InvalidArgumentError]
70
+
]]>
71
+
</screen>
72
+
</example>
73
+
</para>
74
+
</refsect1>
75
+
76
+
<refsect1 role="seealso">
77
+
&reftitle.seealso;
78
+
<para>
79
+
<simplelist>
80
+
<member><methodname>Throwable::getPrevious</methodname></member>
81
+
</simplelist>
82
+
</para>
83
+
</refsect1>
84
+
</refentry>
85
+
<!-- Keep this comment at the end of the file
86
+
Local variables:
87
+
mode: sgml
88
+
sgml-omittag:t
89
+
sgml-shorttag:t
90
+
sgml-minimize-attributes:nil
91
+
sgml-always-quote-attributes:t
92
+
sgml-indent-step:1
93
+
sgml-indent-data:t
94
+
indent-tabs-mode:nil
95
+
sgml-parent-document:nil
96
+
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
97
+
sgml-exposed-tags:nil
98
+
sgml-local-catalogs:nil
99
+
sgml-local-ecat-files:nil
100
+
End:
101
+
vim600: syn=xml fen fdm=syntax fdl=2 si
102
+
vim: et tw=78 syn=sgml
103
+
vi: ts=1 sw=1
104
+
-->
0
105