From: Michael Wallner Date: Fri, 22 Jul 2005 15:50:29 +0000 (+0000) Subject: - docs X-Git-Tag: RELEASE_0_10_0~16 X-Git-Url: https://git.m6w6.name/?a=commitdiff_plain;h=f2d1bcbb220370bc25bcd3a7272dd20da57b3058;p=m6w6%2Fext-http - docs --- diff --git a/docs/functions.html b/docs/functions.html index 92a14ca..d00adae 100644 --- a/docs/functions.html +++ b/docs/functions.html @@ -170,6 +170,8 @@ content body. The returned array may look simliar to the following example:

<

array http_get_request_headers(void)

Get a list of incoming HTTP headers.

+

string http_get_request_body(void)

+

Get the raw request body (e.g. POST or PUT data).

bool http_match_request_header(string header, string value[, bool match_case = false])

Match an incoming HTTP header.

string http_get(string url[, array options[, array &info]])

@@ -256,81 +258,7 @@ See http_get() for a full list of available options.

string http_build_query(mixed formdata [, string prefix[, string arg_separator]])

Generates a form-encoded query string from an associative array or object.


-

http_methods.c

-

HttpResponse

-

void HttpResponse::__construct(bool cache, bool gzip)

-

Instantiates a new HttpResponse object, which can be used to send
-any data/resource/file to an HTTP client with caching and multiple
-ranges/resuming support.
-
-NOTE: GZIPping is not implemented yet.

-

bool HttpResponse::setCache(bool cache)

-

Whether it sould be attempted to cache the entitity.
-This will result in necessary caching headers and checks of clients
-"If-Modified-Since" and "If-None-Match" headers. If one of those headers
-matches a "304 Not Modified" status code will be issued.
-
-NOTE: If you're using sessions, be shure that you set session.cache_limiter
-to something more appropriate than "no-cache"!

-

bool HttpResponse::getCache()

-

Get current caching setting.

-

bool HttpResponse::setGzip(bool gzip)

-

Enable on-thy-fly gzipping of the sent entity. NOT IMPLEMENTED YET.

-

bool HttpResponse::getGzip()

-

Get current gzipping setting.

-

bool HttpResponse::setCacheControl(string control[, bool raw = false])

-

Set a custom cache-control header, usually being "private" or "public"; if
-$raw is set to true the header will be sent as-is.

-

string HttpResponse::getCacheControl()

-

Get current Cache-Control header setting.

-

bool HttpResponse::setContentType(string content_type)

-

Set the content-type of the sent entity.

-

string HttpResponse::getContentType()

-

Get current Content-Type header setting.

-

bool HttpResponse::setContentDisposition(string filename[, bool inline = false])

-

Set the Content-Disposition of the sent entity. This setting aims to suggest
-the receiveing user agent how to handle the sent entity; usually the client
-will show the user a "Save As..." popup.

-

array HttpResponse::getContentDisposition()

-

Get current Content-Disposition setting.
-Will return an associative array like:

array(
- 'filename' => 'foo.bar',
- 'inline' => false
-)
-

-

bool HttpResponse::setETag(string etag)

-

Set a custom ETag. Use this only if you know what you're doing.

-

string HttpResponse::getETag()

-

Get the previously set custom ETag.

-

void HttpResponse::setThrottleDelay(double seconds)

-

-

double HttpResponse::getThrottleDelay()

-

-

void HttpResponse::setSendBuffersize(long bytes)

-

-

long HttpResponse::getSendBuffersize()

-

-

bool HttpResponse::setData(string data)

-

Set the data to be sent.

-

string HttpResponse::getData()

-

Get the previously set data to be sent.

-

bool HttpResponse::setStream(resource stream)

-

Set the resource to be sent.

-

resource HttpResponse::getStream()

-

Get the previously set resource to be sent.

-

bool HttpResponse::setFile(string file)

-

Set the file to be sent.

-

string HttpResponse::getFile()

-

Get the previously set file to be sent.

-

bool HttpResponse::send([bool clean_ob = true])

-

Finally send the entity.
-
-Example:


-<?php
$r
= new HttpResponse(true);
$r->setFile('../hidden/contract.pdf');
$r->setContentType('application/pdf');
$r->send();
?>
-

-

-
-

+

http_message_object.c

HttpMessage

void HttpMessage::__construct([string message])

Instantiate a new HttpMessage object.

@@ -377,6 +305,8 @@ Returns false if version is invalid (1.0 and 1.1).

Send the Message according to its type as Response or Request.

string HttpMessage::toString([bool include_parent = true])

Get the string representation of the Message.

+
+

http_request_object.c

HttpRequest

void HttpRequest::__construct([string url[, long request_method = HTTP_GET]])

Instantiate a new HttpRequest object which can be used to issue HEAD, GET
@@ -407,9 +337,9 @@ and POST (including posting files) HTTP requests.

Get previously set cookies.

void HttpRequest::unsetCookies()

-

bool HttpRequest::setURL(string url)

+

bool HttpRequest::setUrl(string url)

Set the request URL.

-

string HttpRequest::getUrl()

+

string HttpRequest::getUrl()

Get the previously set request URL.

bool HttpRequest::setMethod(long request_method)

Set the request methods; one of the HTTP_HEAD, HTTP_GET or
@@ -448,7 +378,7 @@ Affects only POST requests.

bool HttpRequest::addPostFile(string name, string file[, string content_type = "application/x-octetstream"])

Add a file to the POST request.
Affects only POST requests.

-

bool HttpRequest::setPostFiles()

+

bool HttpRequest::setPostFiles(array post_files)

Set files to post.
Overwrites previously set post files.
Affects only POST requests.

@@ -492,13 +422,15 @@ GET example:




+
+

http_requestpool_object.c

HttpRequestPool

-

void HttpRequestPool::__construct()

+

void HttpRequestPool::__construct([HttpRequest request[, ...]])

Instantiate a new HttpRequestPool object. An HttpRequestPool is
able to send several HttpRequests in parallel.

Example:


-<?php
    $urls
= array('www.php.net', 'pecl.php.net', 'pear.php.net')
    
$pool = new HttpRequestPool;
    foreach (
$urls as $url) {
        
$req[$url] = new HttpRequest("http://$url", HTTP_HEAD);
        
$pool->attach($req[$url]);
    }
    
$pool->send();
    foreach (
$urls as $url) {
        
printf("%s (%s) is %s\n",
            
$url, $req[$url]->getResponseInfo('effective_url'),
            
$r->getResponseCode() == 200 ? 'alive' : 'not alive'
        
);
    }
?>
+<?php
    $urls
= array('www.php.net', 'pecl.php.net', 'pear.php.net')
    
$pool = new HttpRequestPool;
    foreach (
$urls as $url) {
        
$req[$url] = new HttpRequest("http://$url", HTTP_HEAD);
        
$pool->attach($req[$url]);
    }
    
$pool->send();
    foreach (
$urls as $url) {
        
printf("%s (%s) is %s\n",
            
$url, $req[$url]->getResponseInfo('effective_url'),
            
$r->getResponseCode() == 200 ? 'alive' : 'not alive'
        
);
    }
?>



@@ -526,7 +458,80 @@ NOTE: set all options prior attaching!

protected void HttpRequestPool::socketRead()

See HttpRequestPool::socketSend().


-

Generated at: Tue, 14 Jun 2005 16:56:52 +0200

+

http_response_object.c

+

static bool HttpResponse::setCache(bool cache)

+

Whether it sould be attempted to cache the entitity.
+This will result in necessary caching headers and checks of clients
+"If-Modified-Since" and "If-None-Match" headers. If one of those headers
+matches a "304 Not Modified" status code will be issued.
+
+NOTE: If you're using sessions, be shure that you set session.cache_limiter
+to something more appropriate than "no-cache"!

+

static bool HttpResponse::getCache()

+

Get current caching setting.

+

static bool HttpResponse::setGzip(bool gzip)

+

Enable on-thy-fly gzipping of the sent entity. NOT IMPLEMENTED YET.

+

static bool HttpResponse::getGzip()

+

Get current gzipping setting.

+

static bool HttpResponse::setCacheControl(string control[, long max_age = 0])

+

Set a custom cache-control header, usually being "private" or "public";
+The max_age parameter controls how long the cache entry is valid on the client side.

+

static string HttpResponse::getCacheControl()

+

Get current Cache-Control header setting.

+

static bool HttpResponse::setContentType(string content_type)

+

Set the content-type of the sent entity.

+

static string HttpResponse::getContentType()

+

Get current Content-Type header setting.

+

static bool HttpResponse::setContentDisposition(string filename[, bool inline = false])

+

Set the Content-Disposition of the sent entity. This setting aims to suggest
+the receiveing user agent how to handle the sent entity; usually the client
+will show the user a "Save As..." popup.

+

static string HttpResponse::getContentDisposition()

+

Get current Content-Disposition setting.

+

static bool HttpResponse::setETag(string etag)

+

Set a custom ETag. Use this only if you know what you're doing.

+

static string HttpResponse::getETag()

+

Get the previously set custom ETag.

+

static void HttpResponse::setThrottleDelay(double seconds)

+

+

static double HttpResponse::getThrottleDelay()

+

+

static void HttpResponse::setBufferSize(long bytes)

+

+

static long HttpResponse::getBufferSize()

+

+

static bool HttpResponse::setData(string data)

+

Set the data to be sent.

+

static string HttpResponse::getData()

+

Get the previously set data to be sent.

+

static bool HttpResponse::setStream(resource stream)

+

Set the resource to be sent.

+

static resource HttpResponse::getStream()

+

Get the previously set resource to be sent.

+

static bool HttpResponse::setFile(string file)

+

Set the file to be sent.

+

static string HttpResponse::getFile()

+

Get the previously set file to be sent.

+

static bool HttpResponse::send([bool clean_ob = true])

+

Finally send the entity.
+
+Example:


+<?php
HttpResponse
::setCache(true);
HttpResponse::setContentType('application/pdf');
HttpResponse::setContentDisposition("$user.pdf", false);
HttpResponse::setFile('sheet.pdf');
HttpResponse::send();
?>
+

+

+
+

+

static void HttpResponse::capture()

+

Capture script output.
+
+Example:


+<?php
HttpResponse
::setCache(true);
HttpResponse::capture();
// script follows
?>
+

+

+
+

+
+

Generated at: Fri, 22 Jul 2005 17:44:59 +0200

diff --git a/funcsummary.php b/funcsummary.php index dad2f5b..0a4e858 100644 --- a/funcsummary.php +++ b/funcsummary.php @@ -19,6 +19,12 @@ function ff($t) $t = preg_replace('/(\
\n)+\<\/pre\>(\
\n)+/', '

', $t); return sprintf('

%s

', ltrim($t, ' *')); } +function e($s) +{ + $a = func_get_args(); + array_unshift($a, STDERR); + call_user_func_array('fprintf', $a); +} $preface = <<<_PREFACE @@ -84,22 +90,28 @@ if ($_SERVER['argc'] < 2) { printf($preface, basename(getcwd())); -foreach (array_slice($_SERVER['argv'], 1) as $f) { - if (mf($f, $m)) { - printf("

%s

\n", basename($f)); - foreach ($m[1] as $i => $p) { - if ($o = preg_match('/^(.*), (.*)$/', $m[4][$i], $n)) { - if ($n[2] == '__construct') { - printf("

%s

\n", $n[1], $n[1]); +foreach (array_slice($_SERVER['argv'], 1) as $fp) { + foreach (glob($fp) as $f) { + + if (mf($f, $m)) { + e("\nAnalyzing %s\n", basename($f)); + printf("

%s

\n", basename($f)); + foreach ($m[1] as $i => $p) { + e("Documenting $p\n"); + if ($o = preg_match('/^(.*), (.*)$/', $m[4][$i], $n)) { + if ($n[2] == '__construct') { + printf("

%s

\n", $n[1], $n[1]); + } } + printf("%s\n%s\n", + $o?3:2, $o?$n[1].'_'.$n[2]:$m[4][$i], $p, $o?3:2, ff($m[3][$i])); } - printf("%s\n%s\n", - $o?3:2, $o?$n[1].'_'.$n[2]:$m[4][$i], $p, $o?3:2, ff($m[3][$i])); + print "
\n"; } - print "
\n"; } } printf($footer, date('r')); +e("\nDone\n"); ?> diff --git a/http_response_object.c b/http_response_object.c index 7e8c77c..6490238 100644 --- a/http_response_object.c +++ b/http_response_object.c @@ -188,7 +188,7 @@ static inline void _http_response_object_declare_default_properties(TSRMLS_D) /* ### USERLAND ### */ -/* {{{ proto bool HttpResponse::setCache(bool cache) +/* {{{ proto static bool HttpResponse::setCache(bool cache) * * Whether it sould be attempted to cache the entitity. * This will result in necessary caching headers and checks of clients @@ -211,7 +211,7 @@ PHP_METHOD(HttpResponse, setCache) } /* }}} */ -/* {{{ proto bool HttpResponse::getCache() +/* {{{ proto static bool HttpResponse::getCache() * * Get current caching setting. */ @@ -225,7 +225,7 @@ PHP_METHOD(HttpResponse, getCache) } /* }}}*/ -/* {{{ proto bool HttpResponse::setGzip(bool gzip) +/* {{{ proto static bool HttpResponse::setGzip(bool gzip) * * Enable on-thy-fly gzipping of the sent entity. NOT IMPLEMENTED YET. */ @@ -242,7 +242,7 @@ PHP_METHOD(HttpResponse, setGzip) } /* }}} */ -/* {{{ proto bool HttpResponse::getGzip() +/* {{{ proto static bool HttpResponse::getGzip() * * Get current gzipping setting. */ @@ -256,7 +256,7 @@ PHP_METHOD(HttpResponse, getGzip) } /* }}} */ -/* {{{ proto bool HttpResponse::setCacheControl(string control[, long max_age = 0]) +/* {{{ proto static bool HttpResponse::setCacheControl(string control[, long max_age = 0]) * * Set a custom cache-control header, usually being "private" or "public"; * The max_age parameter controls how long the cache entry is valid on the client side. @@ -285,7 +285,7 @@ PHP_METHOD(HttpResponse, setCacheControl) } /* }}} */ -/* {{{ proto string HttpResponse::getCacheControl() +/* {{{ proto static string HttpResponse::getCacheControl() * * Get current Cache-Control header setting. */ @@ -300,7 +300,7 @@ PHP_METHOD(HttpResponse, getCacheControl) } /* }}} */ -/* {{{ proto bool HttpResponse::setContentType(string content_type) +/* {{{ proto static bool HttpResponse::setContentType(string content_type) * * Set the content-type of the sent entity. */ @@ -324,7 +324,7 @@ PHP_METHOD(HttpResponse, setContentType) } /* }}} */ -/* {{{ proto string HttpResponse::getContentType() +/* {{{ proto static string HttpResponse::getContentType() * * Get current Content-Type header setting. */ @@ -339,7 +339,7 @@ PHP_METHOD(HttpResponse, getContentType) } /* }}} */ -/* {{{ proto bool HttpResponse::setContentDisposition(string filename[, bool inline = false]) +/* {{{ proto static bool HttpResponse::setContentDisposition(string filename[, bool inline = false]) * * Set the Content-Disposition of the sent entity. This setting aims to suggest * the receiveing user agent how to handle the sent entity; usually the client @@ -363,7 +363,7 @@ PHP_METHOD(HttpResponse, setContentDisposition) } /* }}} */ -/* {{{ proto string HttpResponse::getContentDisposition() +/* {{{ proto static string HttpResponse::getContentDisposition() * * Get current Content-Disposition setting. */ @@ -378,7 +378,7 @@ PHP_METHOD(HttpResponse, getContentDisposition) } /* }}} */ -/* {{{ proto bool HttpResponse::setETag(string etag) +/* {{{ proto static bool HttpResponse::setETag(string etag) * * Set a custom ETag. Use this only if you know what you're doing. */ @@ -397,7 +397,7 @@ PHP_METHOD(HttpResponse, setETag) } /* }}} */ -/* {{{ proto string HttpResponse::getETag() +/* {{{ proto static string HttpResponse::getETag() * * Get the previously set custom ETag. */ @@ -412,7 +412,7 @@ PHP_METHOD(HttpResponse, getETag) } /* }}} */ -/* {{{ proto void HttpResponse::setThrottleDelay(double seconds) +/* {{{ proto static void HttpResponse::setThrottleDelay(double seconds) * */ PHP_METHOD(HttpResponse, setThrottleDelay) @@ -425,7 +425,7 @@ PHP_METHOD(HttpResponse, setThrottleDelay) } /* }}} */ -/* {{{ proto double HttpResponse::getThrottleDelay() +/* {{{ proto static double HttpResponse::getThrottleDelay() * */ PHP_METHOD(HttpResponse, getThrottleDelay) @@ -438,7 +438,7 @@ PHP_METHOD(HttpResponse, getThrottleDelay) } /* }}} */ -/* {{{ proto void HttpResponse::setBufferSize(long bytes) +/* {{{ proto static void HttpResponse::setBufferSize(long bytes) * */ PHP_METHOD(HttpResponse, setBufferSize) @@ -451,7 +451,7 @@ PHP_METHOD(HttpResponse, setBufferSize) } /* }}} */ -/* {{{ proto long HttpResponse::getBufferSize() +/* {{{ proto static long HttpResponse::getBufferSize() * */ PHP_METHOD(HttpResponse, getBufferSize) @@ -464,7 +464,7 @@ PHP_METHOD(HttpResponse, getBufferSize) } /* }}} */ -/* {{{ proto bool HttpResponse::setData(string data) +/* {{{ proto static bool HttpResponse::setData(string data) * * Set the data to be sent. */ @@ -489,7 +489,7 @@ PHP_METHOD(HttpResponse, setData) } /* }}} */ -/* {{{ proto string HttpResponse::getData() +/* {{{ proto static string HttpResponse::getData() * * Get the previously set data to be sent. */ @@ -504,7 +504,7 @@ PHP_METHOD(HttpResponse, getData) } /* }}} */ -/* {{{ proto bool HttpResponse::setStream(resource stream) +/* {{{ proto static bool HttpResponse::setStream(resource stream) * * Set the resource to be sent. */ @@ -531,7 +531,7 @@ PHP_METHOD(HttpResponse, setStream) } /* }}} */ -/* {{{ proto resource HttpResponse::getStream() +/* {{{ proto static resource HttpResponse::getStream() * * Get the previously set resource to be sent. */ @@ -545,7 +545,7 @@ PHP_METHOD(HttpResponse, getStream) } /* }}} */ -/* {{{ proto bool HttpResponse::setFile(string file) +/* {{{ proto static bool HttpResponse::setFile(string file) * * Set the file to be sent. */ @@ -570,7 +570,7 @@ PHP_METHOD(HttpResponse, setFile) } /* }}} */ -/* {{{ proto string HttpResponse::getFile() +/* {{{ proto static string HttpResponse::getFile() * * Get the previously set file to be sent. */ @@ -585,7 +585,7 @@ PHP_METHOD(HttpResponse, getFile) } /* }}} */ -/* {{{ proto bool HttpResponse::send([bool clean_ob = true]) +/* {{{ proto static bool HttpResponse::send([bool clean_ob = true]) * * Finally send the entity. * @@ -731,9 +731,18 @@ PHP_METHOD(HttpResponse, send) } /* }}} */ -/* {{{ proto void HttpResponse::capture() +/* {{{ proto static void HttpResponse::capture() * * Capture script output. + * + * Example: + *
+ * 
+ * 
*/ PHP_METHOD(HttpResponse, capture) {