php学习知识点

1.一些有用的函数

htmlspecialchars将特殊字符转换为 HTML 实体

htmlspecialchars ( string $string [, int $flags = ENT_COMPAT | ENT_HTML401 [, string $encoding = ini_get("default_charset") [, bool $double_encode = TRUE ]]] ) : string
flags

位掩码,由以下某个或多个标记组成,设置转义处理细节、无效单元序列、文档类型。 默认是 ENT_COMPAT | ENT_HTML401

有效的 flags 常量
常量名称 描述
ENT_COMPAT 会转换双引号,不转换单引号。
ENT_QUOTES 既转换双引号也转换单引号。
ENT_NOQUOTES 单/双引号都不转换

某类字符在 HTML 中有特殊用处,如需保持原意,需要用 HTML 实体来表达。 本函数会返回字符转义后的表达。 如需转换子字符串中所有关联的名称实体,使用 htmlentities() 代替本函数。

如果传入字符的字符编码和最终的文档是一致的,则用函数处理的输入适合绝大多数 HTML 文档环境。 然而,如果输入的字符编码和最终包含字符的文档是不一样的, 想要保留字符(以数字或名称实体的形式),本函数以及 htmlentities() (仅编码名称实体对应的子字符串)可能不够用。 这种情况可以使用 mb_encode_numericentity() 代替。

字符 替换后
& (& 符号) &
" (双引号) ",除非设置了 ENT_NOQUOTES
' (单引号) 设置了 ENT_QUOTES 后, ' (如果是 ENT_HTML401) ,或者 ' (如果是 ENT_XML1ENT_XHTMLENT_HTML5)。
< (小于) &lt;
> (大于) &gt;
1 <?php
2 $new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
3 echo $new; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;
4 ?>

htmlentities将字符转换为 HTML 转义字符

本函数各方面都和 htmlspecialchars() 一样, 除了 htmlentities() 会转换所有具有 HTML 实体的字符。

 

nl2br在字符串所有新行之前插入 HTML 换行标记

nl2br ( string $string [, bool $is_xhtml = TRUE ] ) : string

在字符串 string 所有新行之前插入 '<br />''<br>',并返回。

<?php
echo nl2br("foo isn't\n bar");
?>

以上例程会输出:

foo isn't<br />
 bar

<?php
$string "This\r\nis\n\ra\nstring\r";
echo nl2br($string);
?>

以上例程会输出:

This<br />
is<br />
a<br />
string<br />

猜你喜欢

转载自www.cnblogs.com/bjarnescottlee/p/12303257.html