Maison  >  Article  >  développement back-end  >  Comment convertir du texte enrichi PHP en HTML

Comment convertir du texte enrichi PHP en HTML

藏色散人
藏色散人original
2021-11-16 09:34:022741parcourir

Comment convertir du texte riche php en HTML : 1. Ouvrez le fichier de code correspondant et modifiez le chemin de l'image ; 2. Utilisez phpword pour convertir en HTML, le code ressemble à "$phpWord = new PhpOffice PhpWord PhpWord..."

Comment convertir du texte enrichi PHP en HTML

L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3

php Comment convertir du texte enrichi en html ?

PHP Texte enrichi en html, word, téléchargement de fichier pdf

Texte riche J'utilise layui ici parce que c'est léger...

Quant à la façon d'utiliser la documentation en texte enrichi, c'est très simple. Si vous avez des questions, veuillez les poser : http://www.layui.com. /doc/modules/layedit.html

Ensuite, après avoir accédé aux données de texte enrichi, supprimez le contenu que vous souhaitez :

1 Convertir html

$html = "Voici le contenu que vous souhaitez !";

. Comment convertir du texte enrichi PHP en HTML

La première ligne est due au fait que le chemin de l'image est incorrect et ne peut pas être affiché. Après avoir effectué le remplacement correct, vous pouvez également utiliser phpword pour convertir en HTML, comme indiqué ci-dessus pour la démo de. phpword, vous pouvez vous référer à

phpword (composer) : composer require phpoffice/phpword

<?PHP
require_once  &#39; bootstrap.php中&#39; ;
//创建新文档... 
$ phpWord  =  new  \ PhpOffice \ PhpWord \ PhpWord();
/ *注意:您附加到文档的任何元素都必须位于节中。* /
//添加一个空的部分到文档中... 
$ section  =  $ phpWord - > addSection(); 
//添加文本元素默认......风格的字体有第
$节- > addText(
 “ ‘借鉴昨天,活在今天,憧憬明天。‘ ’最重要的是不要停止问问题。’ ”。&#39;(爱因斯坦)&#39;);    
         
         
/ *
 *注意:可以通过三种方式自定义添加的Text元素的字体样式:
*  -  inline; 
*  - 使用指定的字体样式(隐式创建新的字体样式对象); 
*  - 使用明确创建的字体样式对象。
* / 
//&#39;添加带有字体自定义内联的文本元素... 
$ section - > addText(
 &#39;&#39;伟大的成就通常是由于伟大的牺牲&#39;&#39;。&#39;而且永远不是自私的结果。&#39;&#39;。&#39;(Napoleon Hill)&#39;, array( &#39; name &#39; => &#39; Tahoma &#39;, &#39; size &#39; => 10));    
         
         
        
//使用指定字体样式自定义字体添加文本元素... 
$ fontStyleName  =  &#39; oneUserDefinedStyle &#39; ; 
$ phpWord - > addFontStyle(
 $ fontStyleName, array( &#39; name &#39; => &#39; Tahoma &#39;, &#39; size &#39; => 10, &#39; color &#39; => &#39; 1B2232 &#39;, &#39; bold &#39; => true)); $ section - >    
            
    “最大的成就是不是永远不跌倒,‘ 
’但在再度上涨你掉下去了。” &#39;。&#39;(Vince Lombardi)&#39;,$ fontStyleName);         
         
    
//添加使用明确创建的字体样式对象自定义字体的文本元素... 
$ fontStyle  =  new  \ PhpOffice \ PhpWord \ Style \ Font(); 
$ fontStyle - > setBold( true); 
$ fontStyle - > setName( &#39; Tahoma &#39;); 
$ fontStyle - > setSize( 13); 
$ myTextElement  =  $节- > addText( &#39; “相信你能和你\&#39;重新一半。“(西奥多·罗斯福)&#39;); 
$ myTextElement - > setFontStyle($ fontStyle);
//将文档保存为OOXML文件... 
$ objWriter  =  \ PhpOffice \ PhpWord \ IOFactory :: createWriter( $ phpWord, &#39; Word2007 &#39;); 
$ objWriter - > save( &#39; helloWorld.docx &#39;);
//将文档保存为ODF文件... 
$ objWriter  =  \ PhpOffice \ PhpWord \ IOFactory :: createWriter( $ phpWord, &#39; ODText &#39;); 
$ objWriter - > save( &#39; helloWorld.odt &#39;);
//将文档保存为HTML文件... 
$ objWriter  =  \ PhpOffice \ PhpWord \ IOFactory :: createWriter( $ phpWord, &#39; HTML &#39;); 
$ objWriter - > save( &#39; helloWorld.html &#39;);
/ *注意:我们跳过RTF,因为它不是基于XML的,需要一个不同的例子。* / 
/ *注意:我们跳过PDF,因为“HTML-to-PDF”方法用于创建PDF文档。* /

2 Convertir le mot

(1) Utilisez file_put_contents() intégré à PHP, après avoir essayé de l'enregistrer sous Word, tout le contenu. Les balises HTML originales existeront À moins que vous n'ayez besoin de texte enrichi ou de code source HTML, cela n'a aucun sens.

Comment convertir du texte enrichi PHP en HTML (2) Utiliser le cache : pour afficher l'image après l'avoir téléchargée localement, vous ne pouvez utiliser que l'adresse réseau (IP ou nom de domaine)

$wors = str_replace("/uploads/layui/","http://172.16.3.125/notes/public/uploads/layui/",$html);
$this->start();
$newname = &#39;pppp&#39;;
$wordname = &#39;files/word/&#39;.$newname.".doc";//生成文件路径
echo $wors;
$this->save($wordname);
ob_flush();//每次执行前刷新缓存
flush();
function start()
{
    ob_start();
    echo &#39;<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>
        </head><body>&#39;;
}
function save($path)
{
    echo "</body></html>";
    $data = ob_get_contents();
    ob_end_clean();
    $this->wirtefile ($path,$data);
}
function wirtefile ($fn,$data)
{
    $fp=fopen($fn,"wb");
    fwrite($fp,$data);
    fclose($fp);
}

(3) Vous pouvez également utiliser phpword pour la convertir en word, comme montré dans la démo phpword ci-dessus, vous pouvez Pour référence, mais pour afficher l'image après l'avoir téléchargée localement, vous ne pouvez utiliser que l'adresse réseau (IP ou nom de domaine)

(4) Il existe des exemples sur Internet de conversion de HTML en mht puis en transférant le texte de l'image en Word. Je pensais que c'était trop long, alors à l'avenir Jetez un oeil ε≡٩(๑>₃

3. to-PDF : J'en ai entendu parler mais je ne l'ai pas essayé. Quiconque l'a utilisé peut me donner quelques conseils

(2) Utiliser l'extension mpdf (Mapo Tofu) (utilisée pour composer) : composer require mpdf/mpdf

public function topdf()
    {
        $html = Db::table(&#39;diary&#39;)->where(&#39;id&#39;,12)->find();
        $title = &#39;<h1 style="text-align: center;">&#39; . $html[&#39;notename&#39;] . &#39;</h1>&#39;;
        $content = $html[&#39;content&#39;];
        $mpdf  =  new Mpdf();
        $mpdf->autoScriptToLang = true;
        $mpdf->autoLangToFont = true;
        $header=&#39;<table width="95%" style="margin:0 auto;border-bottom: 1px solid #4F81BD; vertical-align: middle; font-family:  
serif; font-size: 9pt; color: #000088;"><tr>  
                <td width="10%"></td>  
                <td width="80%" style="font-size:16px;color:#A0A0A0">这是我的页眉</td>  
                <td width="10%" style="text-align: right;"></td>  
                
                </tr></table>&#39;;
        $mpdf->SetHTMLHeader($header);  //页眉
//        $mpdf -> WriteHTML(&#39; <h1> Hello world!</h1> &#39;);
        $mpdf -> WriteHTML($title.$content);
        $mpdf->Output();
//        $mpdf -> Output(&#39;files/word/one.pdf&#39;,&#39;D&#39;); //存为文件
    }

Bienvenue pour signaler les endroits/arcs incorrects

Voici un cher ami qui a écrit plus en détail https://blog csdn.net/wepe12/article/details/52796348

Enfin terminé... (Tout. conseils bienvenus)

Apprentissage recommandé : "

Tutoriel vidéo PHP

"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn