Intro

Intro – Introduction à l'utilisation de HTTP_Download

Introduction

HTTP_Download fournit une interface pour envoyer facilement n'importe quelles données arbitraires aux clients HTTP. HTTP_Download can gain its data from variables, files or stream resources.

Avec ce paquet vous pouvez facilement manipuler des téléchargements (cachés). Caché signifiant non accessibles par le public - par exemple si vous voulez limiter l'accès à certains téléchargements.

Il supporte la compression de HTTP, la mise en cache, les téléchargements partiels, la reprise et l'envoi de données brutes, par exemple depuis des BLOBs de base de données.

ATTENTION: Vous ne devriez pas employer ce paquet en même temps que ob_gzhandler ou zlib.output_compression activé dans votre php.ini, particulièrement si vous voulez envoyer des données déjà gzippée !

Examples d'utilisation:

Jetez un oeil aux exemples suivants:

Envoi Statique:

<?php
1  $params 
= array(
2   'file'                => '../repertoireHorsVue/aTelecharger.tgz',
3   'contenttype'         => 'application/x-gzip',
4   'contentdisposition'  => array(HTTP_DOWNLOAD_ATTACHMENT'latest.tgz'),
5  );
6  
7  $error 
HTTP_Download::staticSend($paramsfalse);
?>

Envoi d'un fichier caché:

<?php
1  $dl 
= &new HTTP_Download();
2  $dl->setFile('../repertoireHorsVue/aTelecharger.tgz');
3  $dl->setContentDisposition(HTTP_DOWNLOAD_ATTACHMENT'latest.tgz');
4  // avec ext/magic.mime
5  // $dl->guessContentType();
6  // sinon:
7  $dl->setContentType('application/x-gzip');
8  $dl->send();
?>

Envoi de données arbitraire:

<?php
1  $dl 
= &new HTTP_Download();
2  $dl->setData($data);
3  $dl->setLastModified($unix_timestamp);
4  $dl->setContentType('application/x-gzip');
5  $dl->setContentDisposition(HTTP_DOWNLOAD_ATTACHMENT'latest.tgz');
6  $dl->send();
?>

Limitation de bande passante:

<?php
1  $dl 
= &new HTTP_Download();
2  $dl->setFile('gros_fichier.bin');
3  $dl->setBufferSize(25 1024); // 25 K
4  $dl->setThrottleDelay(1);   // 1 sec
5  $dl->send();
?>

Sending a PostgreSQL LOB:

<?php
1  
require_once 'HTTP/Download.php';
2  require_once 'HTTP/Download/PgLOB.php';
3  $dl = &new HTTP_Download();
4  $dl->setResource(
5    HTTP_Download_PgLOB::open(pg_connect('dbname=lobs'), 12345));
6  $dl->send();
?>
HTTP_Download (Previous) Constructor (Next)
Last updated: Sun, 29 Aug 2010 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

There are no user contributed notes for this page.