• php 编码和解码的函数


    URL:

    urlencode(); //编码

    urldecode(); //解码

    URL与数组互转:

      parse_url ()

      http_build_query()

    base64:

    base64_encode();

    base64_decode();

    JSON:

    json_encode();

    json_decode();

    SESSION:

    session_encode();

    session_decode();

    字符转为HTML实体:

    htmlentities()  / html_entity_decode()

    所有字符转换为 HTML 实体

    htmlspecialchars()  / htmlspecialchars_decode()

    将特殊字符"<" (小于)和 ">" (大于)转换为 HTML 实体 

    uuencode编码:

    convert_uuencode();

    convert_uudecode();

    字符集编码相互转换:

      iconv(); 

      mb_convert_encoding();

    字符写入数据库自动转义:

      // magic_quotes_runtime 相关函数在PHP 5.3.0中已 弃用,并且自PHP 7.0.0起已删除

      get_magic_quotes_runtime() 取得 PHP 环境变量 magic_quotes_runtime 的值。设置返回 1 或者 true

    set_magic_quotes_runtime() 可以让程序员在代码中动态开启或关闭 magic_quotes_runtime,

    set_magic_quotes_runtime(1) 表示开启,set_magic_quotes_runtime(0) 则表示关闭。当set_magic_quotes_runtime(1) 时,从数据库或通过fread之类的函数读取的文本,将自动对’ “和自动加上反斜杠进行转义,防止溢出。这在对数据库的数据进行转移的时候非常有用。

    但在一般情况下,应当将其关闭,否则从数据库读取出来的数据单引号、双引号和反斜杠都会被加上,导致显示不正常。像Discuz,PHPWind都在公共文件的头部加上一句 set_magic_quotes_runtime(0); 强制关闭 magic_quotes_runtime 。

           作用范围:从文件中读取的数据或执行exec()的结果或是从SQL查询中得到的;

      作用时间:每次当脚本访问运行状态中产生的数据.

    字符转义:

      // 自PHP 5.3.0起,此功能已被弃用 ,自PHP 5.4.0 起已被 删除

      magic_quotes_gpc 

    magic_quotes_gpc 为 on,它主要是对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes(),一般在数据入库前要先进行转义不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测,如果 magic_quotes_gpc 为关闭时返回 0,否则返回 1。或者始终FALSE从PHP 5.4.0开始返回

    作用范围是:WEB客户服务端;

    作用时间:请求开始是,例如当脚本运行时。

    反斜线转义字符串:

      addslashes() / stripslashes()  互为反函数

    addslashes() 函数返回在预定义字符之前添加反斜杠的字符串。
    预定义字符是:单引号('),双引号("),反斜杠(),NULL

    指定字符前添加反斜杠:

    addcslashes()  / stripcslashes()  互为反函数

    注释:addcslashes() 函数对大小写敏感。 以 C 语言风格使用反斜线转义字符串中的字符。

    注释:对以下字符应用 addcslashes() 时请小心:0(NULL), r(回车), n(换行), f 换页)、t(制表符)以及 v(垂直制表符)。在 PHP 中,, , , , f 以及 v 是预定义的转义序列。

    string addcslashes ( string $str , string $charlist )

    返回字符串,该字符串在属于参数 charlist 列表中的字符前都加上了反斜线。

    如果 charlist 中包含有 , 等字符,将以 C 语言风格转换,而其它非字母数字且 ASCII 码低于 32 以及高于 126 的字符均转换成使用八进制表示。

  • 相关阅读:
    必备java参考资源列表
    java中使用js函数
    6.游戏特别离不开脚本(3)-JS脚本操作java(2)(直接解析JS公式,并非完整JS文件或者函数)
    6.游戏特别离不开脚本(3)-JS脚本操作java(直接解析JS公式,并非完整JS文件或者函数)
    6.游戏特别离不开脚本(2)-获取脚本引擎
    6.游戏特别离不开脚本(1)-原因
    5.eclipse 自带的jdk没有源码,改了它
    4.调个绿豆沙护眼色
    3.myeclipse 8.5 m1 注册码
    Zxing中文乱码的简单解决办法
  • 原文地址:https://www.cnblogs.com/xuey/p/9749918.html
Copyright © 2020-2023  润新知