php プログラム ファイルのコンテンツを Word ドキュメントに生成し、ダウンロード機能の実装コードを提供します。必要な友達はそれを参照できます
この記事は主に 2 つの問題を解決します:
1: HTML を php Generate に配置する方法HTML のコンテンツを Word ドキュメントに
2: php が HTML のコンテンツを Word ドキュメントに生成するとき、問題は中央に表示されません。つまり、デフォルトでは Web ビューに従って表示されます。
3: PHP が HTML のコンテンツを Word ドキュメントに生成するとき、関連するスタイルの非互換性の問題
テキスト:
echo '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <xml><w:WordDocument><w:View>Print</w:View></xml> <script src="includes/js/ztree/js/jquery-1.4.4.min.js" type="text/javascript"></script> </head>'; echo '<body><table class="table_dayin"> <caption class="table_caption">'; echo "数字化教学系统电子备课稿<br> <span>学科 <em style="border-bottom: 1px solid #545454;">语文</em>学校 <em style="border-bottom: 1px solid #545454;">实验中学</em></span> </caption>"; echo '</table></body></html>'; ob_start(); //打开缓冲区 header("Cache-Control: public"); Header("Content-type: application/octet-stream"); Header("Accept-Ranges: bytes"); if (strpos($_SERVER["HTTP_USER_AGENT"],'MSIE')) { header('Content-Disposition: attachment; filename=test.doc'); }else if (strpos($_SERVER["HTTP_USER_AGENT"],'Firefox')) { Header('Content-Disposition: attachment; filename=test.doc'); } else { header('Content-Disposition: attachment; filename=test.doc'); } header("Pragma:no-cache"); header("Expires:0"); ob_end_flush();//输出全部内容到浏览器
注: 上記のコード部分は、PHP プログラム ファイルのコンテンツを Word ドキュメントに生成し、ダウンロード機能を提供する機能を提供します。
2 番目の質問への回答として、ローカルにダウンロードした Word 文書を開いた後、デフォルトで Web ビューに表示されます: 以下に示すように:
デフォルトの Web ビューで表示:
表示されている場合通常のページビューでは、設定用のヘッダー(青色のコード部分)に xml マークの行を追加する必要があります:
3 番目の問題については、スタイルの非互換性の問題がいくつかあります。たとえば、上部の大きなタイトル:
HTML のスタイル border-bottom: 1px Solid #545454; スタイルが追加されました (青いコード部分)。 「>」と表示されましたが、Wordでは認識されないため下線が表示されません。以下に示すように:
解決策は、Word で認識される下付き文字スタイル、つまり、 に従って変更することです。ローカルにダウンロードされます Word文書を開くと下線マークが表示されます。
誰かに釣りを教えるよりも、釣りを教える方が良いです。このスタイルの非互換性に対する私の解決策を共有します:
1: オンライン エディタの Web バージョンを見つけて、何でもやってください。いくつかの単語を入力し、下線マークを追加します
2: 次に、エディターの上にある [ソース コードの表示] ボタンをクリックすると、追加したばかりの下線付き属性がスタイル マークではなく text-decoration:underline であることがわかります。 in html :border-bottom: 1px Solid #545454;
さて、上記の関連問題については以上です。ご質問がございましたら、一緒に話し合って解決します。
関連記事: