質問編集履歴
1
説明の要点がまとまっていなかったため文章を書き直しました。
    
        title	
    CHANGED
    
    | @@ -1,1 +1,1 @@ | |
| 1 | 
            -
            【PHP】バイナリデータ | 
| 1 | 
            +
            【PHP】salesforceで登録している実ファイルのバイナリデータをブラウザで表示したい
         | 
    
        body	
    CHANGED
    
    | @@ -1,32 +1,27 @@ | |
| 1 | 
            -
            base64形式のバイナリデータをブラウザで出力するにはどうしたら良いでしょうか? | 
| 1 | 
            +
            base64形式のバイナリデータをブラウザで出力するにはどうしたら良いでしょうか?
         | 
| 2 | 
            +
             | 
| 2 3 | 
             
            ユーザーの概念があるシステムで、ユーザー毎に動的にファイルを変えます。
         | 
| 4 | 
            +
            ユーザーやバイナリファイルの管理はsalesforceで行なっています。
         | 
| 3 5 |  | 
| 4 | 
            -
            ##  | 
| 6 | 
            +
            ## 構成
         | 
| 5 | 
            -
            実現したい事を簡略化したソースが下記です。  
         | 
| 6 | 
            -
             | 
| 7 | 
            +
            salsesforceのAPI経由でデータを取得します。  
         | 
| 7 8 |  | 
| 9 | 
            +
            該当するユーザー(Accountオブジェクトとは別のオブジェクト)に紐ずく```Attachement```オブジェクトから、PDFのバイナリデータを取得します。
         | 
| 8 | 
            -
             | 
| 10 | 
            +
            取得後、取得したPDFのバイナリデータをデコードしてブラウザ上に表示します。  
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            Attachmentオブジェクトから該当するIDのbody(base64にエンコードされたデータ)を取得する事は確認できました。
         | 
| 13 | 
            +
             | 
| 9 14 | 
             
            ```php
         | 
| 10 15 | 
             
            <?php
         | 
| 11 | 
            -
            // ユーザーに紐付くbase64でエンコードされた、バイナリデータを取得します
         | 
| 12 16 |  | 
| 13 | 
            -
            $userID = 1;
         | 
| 14 | 
            -
            $pdfFIles = [
         | 
| 15 | 
            -
            	'user0.pdf',
         | 
| 16 | 
            -
            	'user1.pdf'
         | 
| 17 | 
            -
            ]
         | 
| 18 | 
            -
            $ | 
| 17 | 
            +
            $rowFile = <Attachmentオブジェクトから取得したファイルのbody>;
         | 
| 19 | 
            -
             | 
| 20 | 
            -
            // PDFファイル作成
         | 
| 21 18 | 
             
            header('Content-Type: application/pdf');
         | 
| 22 | 
            -
            echo(base64_decode($ | 
| 19 | 
            +
            echo(base64_decode($rowFile));
         | 
| 23 20 | 
             
            exit();
         | 
| 24 21 |  | 
| 25 22 | 
             
            ?>
         | 
| 26 23 | 
             
            ```
         | 
| 27 24 |  | 
| 28 | 
            -
            実際には、バイナリデータ自体をデータベース上で管理しており、ユーザーに紐づくPDFデータを取得します。
         | 
| 29 | 
            -
             | 
| 30 25 | 
             
            ## エラー内容
         | 
| 31 26 | 
             
            PDFとして認識できていないのか表示できません。
         | 
| 32 27 | 
             
            
         | 
