http_throttle
(PECL pecl_http >= 0.10.0)
http_throttle — HTTP throttling
Description
$sec
[, int $bytes
= 40960
] )Sets the throttle delay and send buffer size.
Note: This function should be used in conjunction with http_send_data(), http_send_file() and http_send_stream().
Note: Provides a basic throttling mechanism, which will yield the current process or thread until the entity has been completely sent.
Note:
This may not work as expected with the following SAPI(s): FastCGI.
Parameters
-
sec
-
seconds to sleep after each chunk sent
-
bytes
-
the chunk size in bytes
Examples
Example #1 A http_throttle() example
Send file with approximately 20 kbyte/s.
<?php
// ~ 20 kbyte/s
# http_throttle(1, 20000);
# http_throttle(0.5, 10000);
http_throttle(0.1, 2000);
http_send_file('document.pdf');
?>
See Also
- http_send_data() - Send arbitrary data
- http_send_file() - Send file
- http_send_stream() - Send stream
- the HttpResponse class if you are using PHP 5.1.0 and above
- http_cache_etag
- http_cache_last_modified
- http_chunked_decode
- http_deflate
- http_inflate
- http_build_cookie
- http_date
- http_get_request_body_stream
- http_get_request_body
- http_get_request_headers
- http_match_etag
- http_match_modified
- http_match_request_header
- http_support
- http_negotiate_charset
- http_negotiate_content_type
- http_negotiate_language
- ob_deflatehandler
- ob_etaghandler
- ob_inflatehandler
- http_parse_cookie
- http_parse_headers
- http_parse_message
- http_parse_params
- http_persistent_handles_clean
- http_persistent_handles_count
- http_persistent_handles_ident
- http_get
- http_head
- http_post_data
- http_post_fields
- http_put_data
- http_put_file
- http_put_stream
- http_request_body_encode
- http_request_method_exists
- http_request_method_name
- http_request_method_register
- http_request_method_unregister
- http_request
- http_redirect
- http_send_content_disposition
- http_send_content_type
- http_send_data
- http_send_file
- http_send_last_modified
- http_send_status
- http_send_stream
- http_throttle
- http_build_str
- http_build_url
Коментарии
Note that in the example when it says "Send file with approximately 20 kbyte/s." that is only an upper bound. The file could still be sent at a lesser speed (e.g. 10 kb/s) if the client, network, or server, cannot handle the amount.