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.
http_throttle
(PECL pecl_http >= 0.10.0)
http_throttle — HTTP throttling
Beschreibung
void http_throttle
( float
$sec
[, int $bytes = 40960
] )Sets the throttle delay and send buffer size.
Hinweis: Diese Funktion sollte zusammen mit http_send_data(), http_send_file() und http_send_stream() benutzt werden.
Hinweis: Stellt einen einfachen Drosselungsmechanismus zur Verfügung, der den aktuellen Prozess oder Thread stillegt, bis die Daten vollständig gesendet wurden.
Hinweis:
Mit den folgenden SAPIs funktioniert dies evtl. nicht wie erwartet: FastCGI.
Parameter-Liste
-
sec -
seconds to sleep after each chunk sent
-
bytes -
the chunk size in bytes
Beispiele
Beispiel #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');
?>
Siehe auch
- http_send_data() - Send arbitrary data
- http_send_file() - Send file
- http_send_stream() - Send stream
- die HttpResponse-Klasse, wenn sie PHP 5.1 oder höher benutzen
dr dot sane at gmail dot com ¶
2 years ago
