如何使用PHP实现javascript的escape和unescape函数很多朋友对这方面很关心,我爱编程网整理了相关文章,供大家参考,一起来看一下吧!
本文目录一览:

如何使用PHP实现javascript的escape和unescape函数
前端开发工程师都知道javascript有编码函数escape()和对应的解码函数unescape(),而php中只有个urlencode和 urldecode,这个编码和解码函数对encodeURI和encodeURIComponent有效,但是对escape的是无效的。
javascript中的escape()函数和unescape()函数用户字符串编码,类似于PHP中的urlencode()函数,下面是php实现的escape函数代码:
复制代码 代码如下:
/**
* js escape php 实现
* @param $string the sting want to be escaped
* @param $in_encoding
* @param $out_encoding
*/
function escape($string, $in_encoding = 'UTF-8',$out_encoding = 'UCS-2') {
$return = '';
if (function_exists('mb_get_info')) {
for($x = 0; $x < mb_strlen ( $string, $in_encoding ); $x ++) {
$str = mb_substr ( $string, $x, 1, $in_encoding );
if (strlen ( $str ) > 1) { // 多字节字符
$return .= '%u' . strtoupper ( bin2hex ( mb_convert_encoding ( $str, $out_encoding, $in_encoding ) ) );
} else {
$return .= '%' . strtoupper ( bin2hex ( $str ) );
}
}
}
return $return;
}
对应的解码php unescape代码是:
复制代码 代码如下:
function unescape($str)
{
$ret = '';
$len = strlen($str);
for ($i = 0; $i < $len; $i ++)
{
if ($str[$i] == '%' && $str[$i + 1] == 'u')
{
$val = hexdec(substr($str, $i + 2, 4));
if ($val < 0x7f)
$ret .= chr($val);
else
if ($val < 0x800)
$ret .= chr(0xc0 | ($val >> 6)) .
chr(0x80 | ($val & 0x3f));
else
$ret .= chr(0xe0 | ($val >> 12)) .
chr(0x80 | (($val >> 6) & 0x3f)) .
chr(0x80 | ($val & 0x3f));
$i += 5;
} else
if ($str[$i] == '%')
{
$ret .= urldecode(substr($str, $i, 3));
$i += 2;
} else
$ret .= $str[$i];
}
return $ret;
}

php中如何调用JS文件里的一个函数!
1.A文件用php的fopen函数读取帐号密码,再用md5加密,再写sql。
2.A文件用php的fopen函数读取帐号密码,传给B文件,调用js的md5函数,再用异步传输写数据库。(好像不值得,写一个php函数好了)
PHP中怎么才能调用JS文件里的一个函数!
我爱编程网(https://www.52biancheng.com)小编还为大家带来PHP中怎么才能调用JS文件里的一个函数!的相关内容。
相对路径改成绝对路径试一试。
判断会员是否登陆其实只需要判断cookie是否还有效就可以了,这两句话也可能就是调用了两个函数.
这是我原来写的一个检查cookie是否有效的函数
返回布尔值来判断
当然密码在存放数据库之前句进行了MD5加密
function test_cookie()
{
@mysql_connect('localhost','root','');
@mysql_select_db("MyData");
$read_cookie="select Password from member_data where LoginID= \"".$_COOKIE['user_id']."\"";
$test_cookie=mysql_query($read_cookie);
$r=@mysql_fetch_array($test_cookie,MYSQL_ASSOC);
if(@mysql_num_rows($test_cookie)==1&&$_COOKIE['user_pwd']==$r['Password'])
return TRUE;
else return FALSE;
mysql_close();
}
PS:把函数文件include以后;就是直接用一个if语句判断就可以了
例如:
if(test_cookie())
{
do something which you want to do;
}
else {do nothing;}
其中数据库连接部分是根据你机器里安装设定的写;user_id、user_pwd是自己设置cookie时候用户名和密码;密码为了安全;先进行了md5加密;Password是数据库中存放的密码(加密后)
总体思路就是根据cookie中的user_id去在数据库中查询密码,然后再将查询出来的密码和cookie中的密码比较,来查看cookie是否有效
js调用php你可以上网搜下
我爱编程网以上就是我爱编程网为大家带来的如何使用PHP实现javascript的escape和unescape函数,希望能帮助到大家!更多相关文章关注我爱编程网:
www.52biancheng.com免责声明:文章内容来自网络,如有侵权请及时联系删除。