PHP将字符串转为HTML实体引用
class HtmlEncode {
static $_convertToHtmlEntitiesSrcEncoding='UTF-8';
/**
* 将非ASCII字符串转换成HTML实体
*
* @example HtmlEncode::encode("我信了"); //输出:我信了
* @param string $s 要进行编码的字符串
* @return string 返回HTML实体引用
*/
public static function encode($s,$srcEncoding='UTF-8') {
self::$_convertToHtmlEntitiesSrcEncoding=$srcEncoding;
return preg_replace_callback('|[^\x00-\x7F]+|',array(__CLASS__,'_convertToHtmlEntities'),$s);
}
public static function _convertToHtmlEntities($data) {
if (is_array($data)) {
$chars=str_split(iconv(self::$_convertToHtmlEntitiesSrcEncoding,"UCS-2BE",$data[0]),2);
$chars=array_map(array(__CLASS__,__FUNCTION__),$chars);
return join("",$chars);
} else {
$code=hexdec(sprintf("%02s%02s;",dechex(ord($data {0})),dechex(ord($data {1}))));
return sprintf("&#%s;",$code);
}
}
}
分享到:
相关推荐
在PHP编程中,将字符串转为HTML实体是一个重要的安全措施,可以防止XSS(跨站脚本攻击)等潜在的安全问题。HTML实体是用于在HTML文档中表示特殊字符的符号,例如"&"代表"&","<"代表",">"代表">"。这样做...
HTML实体与非ASCII字符串相互转换类 Func: public encode 字符串转为HTML实体编号 public decode HTML实体编号转为字符串 private _convertToHtmlEntities 转换为HTML实体编号处理
/** * 将非ASCII字符串转换成HTML实体 * * @example HtmlEncode::encode(“我信了”); //输出:我信了 * @param string $s 要进行编码的字符串 * @return string 返回HTML实体引用 */ public static
HTML实体符号被用作实现保留字符(reserved characters)或者表达键盘无法输入的一些常用字符。在大多数浏览器中默认的字符集为ISO-8859-1。HTML实体符号我们在网页设计中经常用到。... * public encode 字符串转为
该函数可以将字符串中的HTML特殊字符转换为其对应的HTML实体,以防止XSS攻击。 **示例代码:** ```php $string = "<script>alert('XSS');</script>"; $encoded = htmlspecialchars($string); echo $encoded; // ...
- **htmlentities** 和 **htmlspecialchars**: 将字符串中的某些字符转换为HTML实体,防止XSS攻击。 - **html_entity_decode** 和 **htmlspecialchars_decode**: 将HTML实体转换回原始字符。 ### 9. 字符串加密与...
例如,将一个关联数组转换为用逗号分隔的字符串: ```php $arr=['a'=>1,'b'=>2]; $res=implode(',', $arr); var_dump($res); ``` 2. HTML实体编码函数:htmlentities() 和 htmlspecialchars() htmlentities() 函数...
一个php实现HTML实体编号与非ASCII字符串相互转换类,HTML实体符号被用作实现保留字符(reserved characters)或者表达键盘无法输入的一些常用字符。在大多数浏览器中默认的字符集为ISO-8859-1。HTML实体符号我们在...
- `htmlentities()` 函数将字符串中的特殊字符转换为HTML实体,防止HTML注入。 - `htmlspecialchars()` 函数类似于`htmlentities()`,但只转换特定的字符,如`< > & " '`。 - `strip_tags()` 函数用于去除字符串...
- nl2br():将字符串中的换行符\n转换为HTML换行标签 。 - strip_tags($str[,'<p>']):去除字符串$str中的HTML和PHP标签。 - htmlspecialchars($str[,参数]):将特殊字符转换为HTML实体。 -魔术引号函数:...
在处理包含HTML标签的字符串时,`htmlspecialchars()`函数将HTML特殊字符转换为HTML实体,防止代码注入。而`strip_tags()`函数则用于移除字符串中的HTML标签,确保只保留文本内容。 调试过程中,可以结合编辑器如...
1. 使用`html_entity_decode()`函数:这个函数的作用是将字符串中的HTML实体转换为对应的字符。HTML实体是一种在HTML文档中用来表示特殊字符的方式,例如`&`表示`&`符号。如果JSON字符串中含有HTML实体,`json_...
`htmlspecialchars()`函数是一个典型例子,它主要用于防止XSS(跨站脚本攻击),将特殊字符转换为HTML实体,例如将"&"转换为"&",'"'转换为'"',等等。这在显示用户输入到网页时非常有用,可以防止恶意代码...
- `strtolower()` 和 `strtoupper()`:将字符串转换为小写或大写。 - `trim()`:去除字符串两端的空白字符。 - `explode()` 和 `implode()`:将字符串分割成数组,或把数组合并成字符串。 5. 字符串连接 使用`.`...
例如,可以将特殊字符转换为它们的HTML实体表示,防止XSS(跨站脚本)攻击。 实现这样的类,我们需要考虑以下几个关键步骤: - **初始化**:在类的构造函数中,可以设定默认的非法字符列表、白名单和黑名单。 - **...
1. `htmlspecialchars` 和 `htmlspecialchars_decode`:这两个函数分别用于将特殊字符转换为HTML实体和反之。这样可以防止XSS攻击,同时也便于在HTML文档中显示文本内容。 2. `strpos` 和 `strstr`:这两个函数可以...
5. **htmlspecialchars($string, $flags, $encoding)**: 将字符串中的某些预定义字符转换为HTML实体,以防止XSS攻击。$flags用于指定转换规则,$encoding则指定了字符集。 6. **htmlentities($string, $flags, $...
`htmlspecialchars()`函数用于将字符串中的特定字符转换为HTML实体。如标题所示,它将美元符号`$`、双引号`"`、小于符号`和大于符号`>`转换为相应的HTML实体(`$`、`"`、`<`和`>`)。这在生成HTML...