Heim > Backend-Entwicklung > PHP-Problem > So konvertieren Sie einen PHP-String in HTML

So konvertieren Sie einen PHP-String in HTML

藏色散人
Freigeben: 2023-03-12 09:52:01
Original
2967 Leute haben es durchsucht

php string转为html的方法:1、通过htmlentities()将字符串中特殊字符转化为html实体;2、通过htmlspecialchars()函数将字符串中特殊字符转化为html实体。

So konvertieren Sie einen PHP-String in HTML

本文操作环境:Windows7系统、PHP7.1版本、Dell G3电脑

php string怎么转为html?

PHP中字符串与html相互转化函数

在一般通信过程中,可能会遇到文档文本编码中所不包括很多字符,或者无法在键盘上输入的字符。例如,版权符号(©)、分币符号(¢)和语法重音符号等就属于这种字符。为了克服这些缺点,专门设计了一组统一的按键编码,称为字符实体引用。

1,htmlentities(),将字符串中特殊字符转化为html实体。

 string htmlentities(string $str,int $quote_style,int $charset,boolean $double_encode),因为标记中引号有特殊意义,可以通过$quote_style参数来选择如何处理引号,其值:ENT_COMPAT,转换双引号,忽略单引号,这是默认值;ENT_NOQUOTES,忽略双引号和单引号;ENT_QUOTES,转换双引号和单引号。$charset参数确定转换所用字符集,如果忽略charset,默认认为ISO-8859-1。$double_encode会阻止htmlentities()对字符串中已有的HTML实体编码。

如:

<?php
$str = "Bill & &#39;Steve&#39;";
echo htmlentities($str, ENT_COMPAT); // 只转换双引号
echo "<br>";
echo htmlentities($str, ENT_QUOTES); // 转换双引号和单引号
echo "<br>";
echo htmlentities($str, ENT_NOQUOTES); // 不转换任何引号
Nach dem Login kopieren

输出:

Bill & 'Steve'
Bill & 'Steve'
Bill & 'Steve'

页面源代码是:

Bill &amp; &#39;Steve&#39;<br>Bill &amp; &#039;Steve&#039;<br>Bill &amp; &#39;Steve&#39;
Nach dem Login kopieren
<?php
$str = "Bill & &#39;Steve&#39;";
echo html_entity_decode($str, ENT_COMPAT); // 只转换双引号
echo "<br>";
echo html_entity_decode($str, ENT_QUOTES); // 转换双引号和单引号
echo "<br>";
echo html_entity_decode($str, ENT_NOQUOTES); // 不转换任何引号
Nach dem Login kopieren
输出:Bill & &#39;Steve&#39;Bill & &#39;Steve&#39;Bill & &#39;Steve&#39;页面源代码是:
Nach dem Login kopieren
Bill & &#039;Steve&#039;<br>Bill & &#39;Steve&#39;<br>Bill & &#039;Steve&#039;
Nach dem Login kopieren

2,htmlspecialchars()函数,将字符串中特殊字符转化为html实体。

string htmlspecialchars(string $str,int $quote_style,int $charset,boolean $double_encode),参数与htmlentities()函数中参数类似。

如:

<?php
$str = "This is some <b>bold</b> text";
$str1 = htmlspecialchars($str);
echo $str."<br/>";
echo $str1;
Nach dem Login kopieren

输出:

This is some bold text
This is some bold text

源代码如下:

This is some <b>bold</b> text<br/>This is some &lt;b&gt;bold&lt;/b&gt; text
Nach dem Login kopieren
htmlspecialchars()函数可以转换的字符列表以及最终转换格式如下:&=>&amp;"(双引号)=>&quot;&#39;(单引号)=>&#039;<=>&lt;>=>&gt;注:要防止用户向一个交互式web应用程序中输入HTML标签,这个函数尤为有用。以下例子使用htmlspecialchars()来转换可能有害的字符:
Nach dem Login kopieren
<?php
$input = "I just can&#39;t get <<enough>> of PHP!";
echo htmlspecialchars($input);
Nach dem Login kopieren

其反函数是htmlspecialchars_decode(),htmlspecialchars_decode(string $str,int $flag),$flags规定翻译表将包含哪种引号以及翻译表用于哪种文档类型,默认是ENT_COMPAT | ENT_HTML401

如:

<?php
$str = "This is some <b>bold</b> text.";
$str1 = htmlspecialchars_decode($str);
echo $str."<br/>",$str1;
Nach dem Login kopieren

输出:

This is some bold text.
This is some bold text.

源代码:

This is some &lt;b&gt;bold&lt;/b&gt; text.<br/>This is some <b>bold</b> text.
Nach dem Login kopieren

3,strip_tags()函数,从字符串中移除空字符,HTML和PHP标记,将html转化为纯文本。

string strip_tags(string $str,string $allowable_tags) 

$str,待处理字符串,$allowable_tags指定不被去除的字符列表。

如:

<?php
$text  =  &#39;<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>&#39; ;
echo  strip_tags ( $text );
echo  "\n" ;

// 允许 <p> 和 <a>
echo  strip_tags ( $text ,  &#39;<p><a>&#39; );
Nach dem Login kopieren

输出:

4,get_html_translation_table()函数,返回使用htmlspecialchars()和htmlentities()后的转换表。

array get_html_translation_table(int $table,int $flags,string $encoding),$table表示想要的表,分别是HTML_ENTITIES,HTML_SPECIALCHARS。$flags规定翻译表将包含哪种引号以及翻译表用于哪种文档类型,默认是ENT_COMPAT | ENT_HTML401$encoding一个规定了要使用的字符集的字符串,默认是ISO-8859-1。

如:

<?php
var_dump ( get_html_translation_table ( HTML_ENTITIES ,  ENT_QUOTES  |  ENT_HTML5 ));
Nach dem Login kopieren

输出:

5,阿萨德

推荐学习:《PHP视频教程

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie einen PHP-String in HTML. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage