Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 需要";rip";这个字符串的一部分,并把它放在一个变量中,如何?_Php_Html_Regex_Cookies - Fatal编程技术网

Php 需要";rip";这个字符串的一部分,并把它放在一个变量中,如何?

Php 需要";rip";这个字符串的一部分,并把它放在一个变量中,如何?,php,html,regex,cookies,Php,Html,Regex,Cookies,我创建一个字符串并将其放入cookie中,如下所示: $cookie_value = $salt1.':'.$username.':'.sha1($row['alt_username']); //THEN INSERT INTO COOKIE 然后我获取cookie数据,如下所示: $data = $_COOKIE['cookie_name']; 我需要从cookie中的数据中取出$username。我怎样才能做到 如您所见,用户名被冒号包围 谢谢你这样说: list($salt, $use

我创建一个字符串并将其放入cookie中,如下所示:

$cookie_value = $salt1.':'.$username.':'.sha1($row['alt_username']);
//THEN INSERT INTO COOKIE
然后我获取cookie数据,如下所示:

$data = $_COOKIE['cookie_name'];
我需要从cookie中的数据中取出$username。我怎样才能做到

如您所见,用户名被冒号包围

谢谢你这样说:

list($salt, $username, $hash) = explode(':', $data);
如果不需要,您也可以删除
$salt
$hash
,并将其简化为:

list(,$username) = explode(':', $data);

SHA1生成160位的固定大小消息摘要。使用这些信息,您可以从末尾去掉散列,然后很容易地找到用户名(假设它不包含任何冒号)。

请提供$cookie\u value的示例值。我没有标准的示例值。如你所见,沙沙和盐可以是我所相信的任何东西。至少我认为是这样。但是,如果您愿意,我可以更改模式,但必须保持安全!如果盐真的是什么东西,那么当它含有“:”时,你会有一个严重的问题。盐不是应该是某种秘密吗,而把它送到那里有点达不到目的。。要么这样,要么我就要面临危机了。SHA1是否也包括冒号?SHA1只包含字母和数字,即使用户名后面有冒号也没关系。另一方面,如果
$salt
包含一个冒号,那么你就不走运了。他需要在连接时逃逸冒号,并在正则表达式中考虑到这一点,否则就会爆炸。