1

Yii コントローラーに次のコードがあります。コントローラーの URL を入力すると (またはコントローラーの URL のリンクをクリックすると)、ドキュメントは読み込まれますが、インラインでは読み込まれません (つまり、ファイルをダウンロードするように求められます)。

それ以外の場合は、通常、ファイルへの直接リンクにより、必要に応じてブラウザ ウィンドウに埋め込まれたファイルが開かれるため、通常どおりこれを行うことができます。

以下のコードを使用してダウンロードを強制するのではなく、ブラウザ ウィンドウでファイルを開くにはどうすればよいですか?

$filename = Yii::getPathOfAlias('webroot') . '/docs/brochure.pdf';
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));
fclose($handle);

header('Content-Transfer-Encoding: binary');
header('Content-length: '. strlen($contents));
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename=your_brochure.pdf');

echo $contents;
4

1 に答える 1

1

これで解決できました。犯人はこの行でした

header('Content-Disposition: **attachment**; filename=your_brochure.pdf');

私が変えたもの

header('Content-Disposition: **inline**; filename=your_brochure.pdf')
于 2013-08-06T21:43:15.300 に答える