X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=docs%2Ffunctions.html;h=0e53c616ce4ffb26a736e14107fef50907ba24d4;hb=bc583f99affc17a9ca3eac02525e1774e0a1b08c;hp=69a7e63dcba18dbc7358a28a844c39ca2a30135e;hpb=af89101537efd3a5439953a71dc5aef9f2b3daf0;p=m6w6%2Fext-http
diff --git a/docs/functions.html b/docs/functions.html
index 69a7e63..0e53c61 100644
--- a/docs/functions.html
+++ b/docs/functions.html
@@ -81,7 +81,7 @@ The host will be taken either from the Host HTTP header of the client
the SERVER_NAME or just localhost if prior are not available.
If a port is pecified in either the url or as sperate parameter,
it will be added if it differs from te default port for HTTP(S).
Returns the absolute URI as string.
+Returns the absolute URI as string on success or false on failure.
Examples:
+@@ -113,6 +113,19 @@ if none match. <?php
<?php
$uri = http_build_uri("page.php", "https", NULL, 488);
?>
$charsets = array(
'iso-8859-1', // default
'iso-8859-2',
'iso-8859-15',
'utf-8'
);
$pref = http_negotiate_charset($charsets, $result);
if (strcmp($pref, 'iso-8859-1')) {
iconv_set_encoding('internal_encoding', 'iso-8859-1');
iconv_set_encoding('output_encoding', $pref);
ob_start('ob_iconv_handler');
}
print_r($result);
?>
This function negotiates the clients preferred content type based on its
+Accept HTTP header. The qualifier is recognized and content types
+without qualifier are rated highest.
Expects an array as parameter cotaining the supported content types as values.
+If the optional second parameter is supplied, it will be filled with an
+array containing the negotiation results.
Returns the negotiated content type or the default content type
+(i.e. first array entry) if none match.
Example:
+
+<?php
$ctypes = array('application/xhtml+xml', 'text/html');
http_send_content_type(http_negotiate_content_type($ctypes));
?>
+
Send HTTP status code.
Expects an HTTP status code as parameter.
@@ -240,7 +253,15 @@ several consecutive HTTP messages.Expects a string parameter containing HTTP headers.
Returns an array on success, or FALSE on failure.
Example:
++
-<?php
$headers = "content-type: text/html; charset=UTF-8\r\n".
"Server: Funky/1.0\r\n".
"Set-Cookie: foo=bar\r\n".
"Set-Cookie: baz=quux\r\n".
"Folded: works\r\n\ttoo\r\n";
print_r(http_parse_headers($headers));
Array
(
[Content-Type] => text/html; chatset=UTF-8
[Server] => Funky/1.0
[Set-Cookie] => Array
(
[0] => foo=bar
[1] => baz=quux
)
[Folded] => works
too
?>
+<?php
$headers = "content-type: text/html; charset=UTF-8\r\n".
"Server: Funky/1.0\r\n".
"Set-Cookie: foo=bar\r\n".
"Set-Cookie: baz=quux\r\n".
"Folded: works\r\n\ttoo\r\n";
print_r(http_parse_headers($headers));
Array
(
[Content-Type] => text/html; chatset=UTF-8
[Server] => Funky/1.0
[Set-Cookie] => Array
(
[0] => foo=bar
[1] => baz=quux
)
[Folded] => works
too
)
?>
+
Parses HTTP cookies like sent in a response into a struct.
+Expects a string as parameter containing the value of a Set-Cookie response header.
+Returns an stdClass object with the cookie params as properties on success or FALSE on failure.
+Example:
+<?php
print_r(http_parse_cookie("foo=bar; path=/"));
stdClass Object
(
[name] => foo
[value] => bar
[path] => /
)
?>
Returns the request method name as string on success, or FALSE on failure.
Generates a form-encoded query string from an associative array or object.
-Compress data with the HTTP compatible GZIP encoding.
Expects the first parameter to be a string which contains the data that
should be encoded. Additionally accepts an optional in paramter specifying
@@ -348,7 +369,7 @@ best compression ratio.
Uncompress data compressed with the HTTP compatible GZIP encoding.
Expects a string as parameter containing the compressed data.
Returns the decoded string on success, or NULL on failure.
-Compress data with the HTTP compatible DEFLATE encoding.
Expects the first parameter to be a string containing the data that should
be encoded. Additionally accepts an optional int parameter specifying the
@@ -359,17 +380,6 @@ compression ratio.
Uncompress data compressed with the HTTP compatible DEFLATE encoding.
Expects a string as parameter containing the compressed data.
Returns the decoded string on success, or NULL on failure.
-Compress data with the HTTP compatible COMPRESS encoding.
-Expects the first parameter to be a string containing the data which should
-be encoded. Additionally accepts an optional int parameter specifying the
-compression level, where -1 is default, 0 is no compression and 9 is best
-compression ratio.
Returns the encoded string on success, or NULL on failure.
-Uncompress data compressed with the HTTP compatible COMPRESS encoding.
-Expects a string as parameter containing the compressed data.
-Returns the decoded string on success, or NULL on failure.
Check for feature that require external libraries.
Accpepts an optional in parameter specifying which feature to probe for.
@@ -384,8 +394,6 @@ all supported features that depend on external libraries.
Returns the full message as string.
+Implements Countable.
+Returns the number of parent messages + 1.
+Implements Serializable.
+Returns the serialized representation of the HttpMessage.
+Implements Serializable.
+Re-constructs the HttpMessage based upon the serialized string.
Set the request method.
Expects an int as parameter specifying the request method to use.
-In PHP 5.1+ HttpRequest::METH, otherwise the HTTP_METH constants can be used.
Returns TRUE on success, or FALSE on failure.
Get the previously set request method.
@@ -697,6 +714,11 @@ cycle. references the last received response. Use HttpMessage::getParentMessage()Note that the internal request message is immutable, that means that the
+request message received through HttpRequest::getRequestMessage() will
+always look the same for the same request, regardless of any changes you
+may have made to the returned object.
Throws HttpMalformedHeadersException, HttpEncodingException.
Get all sent requests and received responses as an HttpMessage object.
If you don't want to record history at all, set the instance variable
@@ -705,20 +727,26 @@ HttpRequest::$recoedHistory to FALSE.
The object references the last received response, use HttpMessage::getParentMessage()
to access the data of previously sent requests and received responses.
Throws HttpMalformedHeaderException.
+Note that the internal history is immutable, that means that any changes
+you make the the message list won't affect a history message list newly
+created by another call to HttpRequest::getHistory().
Throws HttpMalformedHeaderException, HttpEncodingException.
Clear the history.
Send the HTTP request.
Returns the received response as HttpMessage object.
+NOTE: While an exception may be thrown, the transfer could have succeeded
+at least partially, so you might want to check the return values of various
+HttpRequest::getResponse*() methods.
Throws HttpRuntimeException, HttpRequestException,
HttpMalformedHeaderException, HttpEncodingException.
GET example:
-<?php
$r = new HttpRequest('http://example.com/feed.rss', HTTP_GET);
$r->setOptions(array('lastmodified' => filemtime('local.rss')));
$r->addQueryData(array('category' => 3));
try {
$r->send();
if ($r->getResponseCode() == 200) {
file_put_contents('local.rss', $r->getResponseBody());
}
} catch (HttpException $ex) {
echo $ex;
}
?>
+<?php
$r = new HttpRequest('http://example.com/feed.rss', HttpRequest::METH_GET);
$r->setOptions(array('lastmodified' => filemtime('local.rss')));
$r->addQueryData(array('category' => 3));
try {
$r->send();
if ($r->getResponseCode() == 200) {
file_put_contents('local.rss', $r->getResponseBody());
}
} catch (HttpException $ex) {
echo $ex;
}
?>
POST example:
-<?php
$r = new HttpRequest('http://example.com/form.php', HTTP_POST);
$r->setOptions(array('cookies' => array('lang' => 'de')));
$r->addPostFields(array('user' => 'mike', 'pass' => 's3c|r3t'));
$r->addPostFile('image', 'profile.jpg', 'image/jpeg');
try {
echo $r->send()->getBody();
} catch (HttpException $ex) {
echo $ex;
}
?>
+<?php
$r = new HttpRequest('http://example.com/form.php', HttpRequest::METH_POST);
$r->setOptions(array('cookies' => array('lang' => 'de')));
$r->addPostFields(array('user' => 'mike', 'pass' => 's3c|r3t'));
$r->addPostFile('image', 'profile.jpg', 'image/jpeg');
try {
echo $r->send()->getBody();
} catch (HttpException $ex) {
echo $ex;
}
?>
Instantiate a new HttpRequestPool object. An HttpRequestPool is
able to send several HttpRequests in parallel.
WARNING: Don't attach/detach HttpRequest objects to the HttpRequestPool
-object while you're using the implemented Interator interface.
Accepts virtual infinite optional parameters each referencing an
HttpRequest object.
Throws HttpRequestException, HttpRequestPoolException, HttpInvalidParamException.
+Throws HttpRequestPoolException (HttpRequestException, HttpInvalidParamException).
Example:
@@ -757,8 +785,7 @@ HttpRequestPool object.
<?php
try {
$pool = new HttpRequestPool(
new HttpRequest('http://www.google.com/', HttpRequest::METH_HEAD),
new HttpRequest('http://www.php.net/', HttpRequest::METH_HEAD)
);
$pool->send();
foreach($pool as $request) {
printf("%s is %s (%d)\n",
$request->getUrl(),
$request->getResponseCode() ? 'alive' : 'not alive',
$request->getResponseCode()
);
}
} catch (HttpException $e) {
echo $e;
}
?>
bool HttpRequestPool::send()
Send all attached HttpRequest objects in parallel.
Returns TRUE on success, or FALSE on failure.
-Throws HttpSocketException, HttpRequestException,
+
-HttpRequestPoolException, HttpMalformedHeaderException.Throws HttpRequestPoolException (HttpSocketException, HttpRequestException, HttpMalformedHeaderException).
protected bool HttpRequestPool::socketPerform()
Returns TRUE until each request has finished its transaction.
Usage:
@@ -778,6 +805,9 @@ HttpRequestPoolException, HttpMalformedHeaderException.Implements Iterator::next().
void HttpRequestPool::rewind()
Implements Iterator::rewind().
+int HttpRequestPool::count()
+Implements Countable.
+Returns the number of attached HttpRequest objects.
array HttpRequestPool::getAttachedRequests()
Get attached HttpRequest objects.
Returns an array containing all currently attached HttpRequest objects.
@@ -953,6 +983,8 @@ http.cache_log is set.
Generated at: Wed, 19 Oct 2005 10:45:25 +0200
+Generated at: Wed, 14 Dec 2005 16:25:48 +0100