mfischer                Tue Apr 30 17:57:02 2002 EDT

  Modified files:              
    /phpdoc/en/reference/sockets/functions      socket-last-error.xml 
  Log:
  - Initial documentation
  # Someone may want to check my grammar quickly, I'm not good at it and it gets
  # worse as it gets later ...
  
  
Index: phpdoc/en/reference/sockets/functions/socket-last-error.xml
diff -u phpdoc/en/reference/sockets/functions/socket-last-error.xml:1.2 
phpdoc/en/reference/sockets/functions/socket-last-error.xml:1.3
--- phpdoc/en/reference/sockets/functions/socket-last-error.xml:1.2     Wed Apr 17 
02:44:09 2002
+++ phpdoc/en/reference/sockets/functions/socket-last-error.xml Tue Apr 30 17:57:02 
+2002
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.2 $ -->
+<!-- $Revision: 1.3 $ -->
 <!-- splitted from ./en/functions/sockets.xml, last change in rev 1.1 -->
   <refentry id="function.socket-last-error">
    <refnamediv>
@@ -10,12 +10,37 @@
     <title>Description</title>
      <methodsynopsis>
       <type>int</type><methodname>socket_last_error</methodname>
-      <methodparam><type>resource</type><parameter>socket</parameter></methodparam>
+      <methodparam 
+choice="opt"><type>resource</type><parameter>socket</parameter></methodparam>
      </methodsynopsis>
      &warn.experimental.func;
     <para>
-     &warn.undocumented.func;
+     This function returns a socket error code.
     </para>
+    <para>
+     If a socket resource is passed to this function, the last error which
+     occured on this particular socket is returned. If the socket resource is
+     ommited, the error code of the last failed socket function is returned.
+     The latter is in particular helpful for functions like
+     <function>socket_create</function> which don't return a socket on
+     failure and <function>socket_select</function> which can fail for reasons
+     not directly tied to a particular socket.  The error code is suitable to
+     be fed to <function>socket_strerror</function> which returns a string
+     describing the given error code.
+     <programlisting role="php">
+<![CDATA[
+if (false == ($socket = @socket_create(AF_INET, SOCK_STREAM, SOL_TCP))) {
+    die("Couldn't create socket, error code is: " . socket_last_error() .
+        ",error message is: " . socket_strerror(socket_last_error()));
+}
+]]>
+     </programlisting>
+    </para>
+    <note>
+     <para>
+      <function>socket_last_error</function> does not clear the error code, use
+      <function>socket_clear_error</function> for this purpose.
+     </para>
+    </note>
    </refsect1>
   </refentry>
 


Reply via email to