2012-03-08 15 views
1

PHPを使用して解決策を見つけることができませんでした。基本的に、ユーザーが「PDFをダウンロード」リンクをクリックすると、バイト配列をとり、PDFとして解析するPHP関数が呼び出されます。私はそれについて行く方法を知らない。どんな助けも素晴らしいだろう!バイト配列をファイルに保存するPHP

EDIT: 私はこのような "バイト配列" を取得しています:

<?php 
$userPDF = $_POST['username']; 
$passPDF = $_POST['password']; 
$idPDF = 'MO-N007175A'; 
//PDF Function 
$data = array("id" => $idPDF, "username" => $userPDF, "password" => $passPDF);                  
$data_string = json_encode($data);             
$ch = curl_init('http://*****.com/****/v1/DealPdf');                  
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");                  
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);                 
curl_setopt($ch, CURLOPT_VERBOSE, 1);                 
curl_setopt($ch, CURLOPT_HTTPHEADER, array(                   
    'Content-Type: application/json')                  
);                             
$result = curl_exec($ch); 
var_dump($result); 
?> 

"$結果は" おそらくこのようになりますバイト配列である:

string(1053240) "[37,80,68,70,45,49,46,54,10,37,211,244,204,225,10,49,32,48,32,111,98 

..等 基本的に私は戻ってきたものをとり、それをPDF(またはその問題の一般的なファイル)として保存する必要があります。

+2

をそしてこのバイト配列から...どこ来ますか? PHPには「バイト配列」はありません。 –

+0

これはWCFサービスからのもので、POSTから取得しています。 – mdance

+0

だから、どのようにオブジェクトをファイルに書きたいのですか? JSON文字列として、私は推測する? –

答えて

1

あなたはこのような何か試すことができます。

// suppose that the response is a JSON array (look like it) 
$bytes = json_decode($results); 

$fp = fopen('myfile.pdf', 'wb+'); 

while(!empty($bytes)) { 
    $byte1 = array_shift($bytes); 
    $byte2 = array_shift($bytes); 
    if(!$byte2) { 
     $byte2 = 0; 
    } 

    fwrite($fp, pack("n*", ($byte1 << 8) + $byte2); // big endian byte order ? 
} 

fclose($fp); 
関連する問題