转义
// 在字符串$str的每个单引号、双引号、反斜线、null前加反斜杠,返回转换后的结果;可以防止sql注入
addslashes($str);
// 去除字符串$str中的转义反斜线
stripslashes($str);
// 在字符串$str的每个$charlist中的字符串前加反斜杠,返回转换后的结果
// $charlist中的\n,\r等字符以C语言风格转换,其它非字母数字且ASCII码低于32以及高于126的字符均转换成使用八进制表示。
addcslashes($str, $charlist);
// 去除字符串$str中的转义反斜线,可识别类似C语言的 \n,\r,... 八进制以及十六进制的描述
stripcslashes($str);
// 在字符串$str的每个特殊字符前加反斜杠,返回转换后的结果;特殊字符包含 . \ + * ? [ ^ ] ( $ )
quotemeta($str);
ASCII转换
// 将字符串转换为0到255范围的无符号整型类
ord($string);
// 将0到255范围的无符号整型类转换为ASCII字符
chr($ascii);
html转换
// 在字符串$string新行前加'<br />' 或 '<br>'并返回;$is_xhtml为true表示使用XHTML兼容换行符
nl2br($string, $is_xhtml = true);
$tables = [
HTML_SPECIALCHARS, //
HTML_ENTITIES //
];
$flags = [ // 使用多个可使用|拼接
ENT_COMPAT, // 转换表包含双引号而不是单引号的实体
ENT_QUOTES, // 转换表包含双引号和单引号的实体。
ENT_NOQUOTES, // 转换表既不包含单引号也不包含双引号的实体。
ENT_HTML401, // HTML 4.01的表格
ENT_XML1, // XML表1
ENT_XHTML, // XHTML表
ENT_HTML5 // HTML5表格
];
// 获取htmlspecialchars()和htmlentities()的字符与实体符对应的转换表,返回数组
get_html_translation_table($table = HTML_ENTITIES, $flag = ENT_COMPAT | ENT_HTML401, $encoding = 'UTF-8');
$flags = [ // 使用多个可使用|拼接
ENT_COMPAT, // 转换双引号,不转换单引号
ENT_QUOTES, // 既转换双引号也转换单引号
ENT_NOQUOTES, // 单/双引号都不转换
ENT_SUBSTITUTE, // 替换无效的代码单元序列为Unicode代替符(Replacement Character),U+FFFD (UTF-8)或者�(其他),而不是返回空字符串
ENT_DISALLOWED, // 为文档的无效代码点替换为Unicode代替符(Replacement Character):U+FFFD (UTF-8),或�(其他),而不是把它们留在原处。比如在要保证XML文档嵌入额外内容时格式合法的情况下很有用。
ENT_HTML401, // 以HTML 4.01处理
ENT_XML1, // 以XML 1处理
ENT_XHTML, // 以XHTML处理
ENT_HTML5 // 以HTML 5处理
];
// 将字符中$string中的字符转换为HTML转义字符,返回转义后的字符串,$double_encode为false时不会转换现有的HTMl实体;转换内容参考get_html_translation_table()
htmlentities($string, $flag = ENT_COMPAT | ENT_HTML401, $encoding = ini_get("default_charset"), $double_encode = true);
$flags = [ // 使用多个可使用|拼接
ENT_COMPAT, // 转换双引号,不转换单引号
ENT_QUOTES, // 既转换双引号也转换单引号
ENT_NOQUOTES, // 单/双引号都不转换
ENT_HTML401, // 以HTML 4.01处理
ENT_XML1, // 以XML 1处理
ENT_XHTML, // 以XHTML处理
ENT_HTML5 // 以HTML 5处理
];
// 将HTML实体转换为相应的字符,返回转换后的字符串,$encoding默认为default_charset配置选项的值;转换内容参考get_html_translation_table()
html_entity_decode($string, $flag = ENT_COMPAT, $encoding = null);
$flags = [ // 使用多个可使用|拼接
ENT_COMPAT, // 转换双引号,不转换单引号
ENT_QUOTES, // 既转换双引号也转换单引号
ENT_NOQUOTES, // 单/双引号都不转换
ENT_SUBSTITUTE, // 替换无效的代码单元序列为Unicode代替符(Replacement Character),U+FFFD (UTF-8)或者�(其他),而不是返回空字符串
ENT_DISALLOWED, // 为文档的无效代码点替换为Unicode代替符(Replacement Character):U+FFFD (UTF-8),或�(其他),而不是把它们留在原处。比如在要保证XML文档嵌入额外内容时格式合法的情况下很有用。
ENT_HTML401, // 以HTML 4.01处理
ENT_XML1, // 以XML 1处理
ENT_XHTML, // 以XHTML处理
ENT_HTML5 // 以HTML 5处理
];
// 将特殊字符转换为HTMl实体符,$double_encode为false时不会转换现有的HTMl实体;转换内容参考get_html_translation_table()
htmlspecialchars($string, $flag = ENT_COMPAT | ENT_HTML401, $encoding = ini_get("default_charset"), $double_encode = true);
$flags = [ // 使用多个可使用|拼接
ENT_COMPAT, // 转换双引号,不转换单引号
ENT_QUOTES, // 既转换双引号也转换单引号
ENT_NOQUOTES, // 单/双引号都不转换
ENT_HTML401, // 以HTML 4.01处理
ENT_XML1, // 以XML 1处理
ENT_XHTML, // 以XHTML处理
ENT_HTML5 // 以HTML 5处理
];
// 将特殊的HTML实体转换回普通字符,被转换的实体有:&,"(没有设置ENT_NOQUOTES时), '(设置了ENT_QUOTES时),<以及> 转换内容参考get_html_translation_table()
htmlspecialchars_decode($string, $flag = ENT_COMPAT | ENT_HTML401);
去除html标记、php标记
// 去除字符串$str中的空字符、HTML和PHP标记,$allowable_tags指定的字符将不会被删除;返回去除后的结果
strip_tags($str, $allowable_tags = ?);