2012-10-22 5 views
8

Comment générer un fichier pdf à partir d'un fichier binaire récupéré de la base de données dans php5? Il vient codé en base64, et je viens de le décoder, mais je ne sais pas quoi faire ensuite ...Comment générer un fichier pdf à partir d'un fichier binaire?

+0

Qu'est-ce qu'un «fichier binaire»? Voulez-vous dire que vous avez stocké un document PDF base64 encodé dans la base de données avant? – deceze

+0

Je reçois le fichier d'un webservice et je veux le rendre lisible, mais je ne sais pas de quelle façon avant de connaître mes alternatives. – nli

Répondre

25

Les données binaires sont simplement le fichier, ou plutôt le contenu important de ce fichier, sans nom de fichier.

$base64 = /* some base64 encoded data fetched from somewhere */; 
$binary = base64_decode($base64); 

Et là, vous avez les données de fichiers /contenu du fichier dans la variable $binary. D'ici, cela dépend de ce que vous voulez faire. Vous pouvez écrire les données dans un fichier, et vous obtenez un fichier PDF « réel »:

file_put_contents('my.pdf', $binary); 

Vous pouvez cracher les données vers le navigateur avec un en-tête approprié, et l'utilisateur reçoit quelque chose qui ressemble à un Fichier PDF à lui:

header('Content-type: application/pdf'); 
header('Content-Disposition: attachment; filename="my.pdf"'); 
echo $binary; 
+2

D'habitude, je ne remercie pas sur les sites SE ... juste en haut vote ... mais, après avoir passé 2h à essayer de faire cela "hard-way", et de ne pas trouver de source d'aide ... Je dois vous remercier ! = D –

-1

Je répète votre dernière phrase. :) Je ne sais pas quelle est la question! :) Si vous souhaitez ajouter le fichier à un navigateur, vous pouvez définir les en-têtes et diffuser le contenu décodé. Ou si vous voulez le fichier tel quel, écrivez sur le système de fichiers et utilisez-le. S'il vous plaît soyez plus clair sur votre question!

Merci!

+0

Désolé mais cette manipulation de fichiers est nouvelle pour moi, alors j'essaie de comprendre comment utiliser le fichier pdf que je récupère à partir du webservice qui vient dans un format binaire. – nli

Questions connexes