PHPファイルダウンロード機能【リアルアイテム】


プロジェクトでは、データベース内のデータをクエリーしてcsvファイルに保存する機能が必要になる場合があります.クライアントにダウンロードします.開発構想:
  • まずクエリーが必要なデータをデータベースからクエリーします.
  • クエリーが必要なデータをcsvファイルに書き込む.
  • はクライアント(ブラウザ)に保存される.

  • シミュレーション生産(プロジェクト)状況、コードリストは以下の通り:
    <?php
      /**
        *     csv  
        */
         //    
         $users = array(
           array("username"=>"   ","age"=>56,"work"=>"  "),
           array("username"=>"   ","age"=>55,"work"=>"  "),
         );
         $filename = date('Ymd').'.csv';
         data2csv($users,$filename);
        /**
          *@param $data array              
          *@param $download_file_name string           
          */
        function data2csv($data,$download_file_name){
            header("Content-type:text/csv");  //       
            header("Content-Disposition:attachment;filename=".$download_file_name);//       
            header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
            header('Expires:0');
            header('Pragma:public');
            ob_start();//  ob  
            echo "\xEF\xBB\xBF";
            $df   = fopen("php://output",'w');
            $head = array_keys(reset($data));
            fputcsv($df,$head);//     
            foreach($data as $row){
              fputcsv($df,$row);
            }
            fclose($df);
            echo ob_get_clean();
        }