>  기사  >  백엔드 개발  >  PHP 특수 문자 이스케이프에 대한 자세한 설명

PHP 특수 문자 이스케이프에 대한 자세한 설명

WBOY
WBOY원래의
2016-07-25 08:52:021885검색
  1. $html = array( );
  2. $html['username'] = htmlentities($clean['username'], ent_quotes, 'utf-8');
  3. echo "

    welcome back, {$html['username']}.

    ";
  4. ?>
复制代码

小提示 htmlspecialchars( )函数与htmlentities( )函数基本相同,它们的参数定义完全相同,只不过是htmlentities( )的转义更为彻底。通过$html['username']把username 输出到客户端,你就可以确保其中的特殊字符不会被浏览器所错误解释。如果username 只包含字母和数字的话,实际上转义是没有必要的,但是这体现了深度防范的原则。转义任何的输出是一个非常好的习惯,它可以戏剧性地提高你的软件的安全性。

另外一个常见的输出目标是数据库。如果可能的话,需要对sql 语句中的数据使用php内建函数进行转义。

对于mysql数据库用户,最好的转义函数是mysql_real_escape_string( )。 如果使用的数据库没有php 内建转义函数可用的话,addslashes( )是最后的选择。

例子,对于mysql 数据库的正确的转义技巧:

  1. $mysql = array( );
  2. $mysql['username'] = mysql_real_escape_string($clean['username']);
  3. $sql = "select *
  4. from profile
  5. where username = '{$mysql['username']}'";
  6. $result = mysql_query($sql);
  7. ?>
复制代码

php过滤参数特殊字符防注入 php 过滤非法与特殊字符串的方法 php实例:特殊字符处理函数的例子 替换超长文本中的特殊字符的php代码



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.