<span 1</span> <span 方法一: </span><span 2</span> <span header</span>('Content-Description: File Transfer'<span ); </span><span 3</span> <span header</span>('Content-Type: application/octet-stream'<span ); </span><span 4</span> <span header</span>('Content-Disposition: attachment; filename='.<span basename</span>(<span $filepath</span><span )); </span><span 5</span> <span header</span>('Content-Transfer-Encoding: binary'<span ); </span><span 6</span> <span header</span>('<span Expires: 0′); </span><span 7</span> header('Cache-Control: must-revalidate, post-check=0, pre-check=0<span ′); </span><span 8</span> <span header</span>('Pragma: public'<span ); </span><span 9</span> <span header</span>('Content-Length: ' . <span filesize</span>(<span $filepath</span><span )); </span><span 10</span> <span readfile</span>(<span $file_path</span><span ); </span><span 11</span> <span 12</span> <span 方法二: </span><span 13</span> <span $fileinfo</span> = <span pathinfo</span>(<span $filename</span><span ); </span><span 14</span> <span header</span>('Content-type: application/x-'.<span $fileinfo</span>['extension'<span ]); </span><span 15</span> <span header</span>('Content-Disposition: attachment; filename='.<span $fileinfo</span>['basename'<span ]); </span><span 16</span> <span header</span>('Content-Length: '.<span filesize</span>(<span $filename</span><span )); </span><span 17</span> <span readfile</span>(<span $thefile</span><span ); </span><span 18</span> <span exit</span>();