动态创建全局变量。[PHP加密]
有没有一种动态创建常量变量的方法 其想法是,在登录到系统时,用户将被要求上传一个小文本文件,该文件将是fread,并分配给一个可以在整个系统中访问的var 如果这是可能的,那么这个变量是否只有在会话处于活动状态时才能被该用户访问 安全性是这里主要关注的问题,将var存储在会话变量中是否更实用 该计划: 数据库中的数据将通过mcrypt加密,密钥将存储在USB拇指驱动器上。用户将在访问系统时插入thumbdrive。登录后,应用程序将提示用户上传密钥。他们将导航到thumbdrive和key。通过fopen和fread,密钥将分配给一个全局var,该var将允许访问加密数据,并将用于加密输入数据库的新信息。 当用户注销或会话超时时,全局变量将变为空 谢谢动态创建全局变量。[PHP加密],php,encryption,Php,Encryption,有没有一种动态创建常量变量的方法 其想法是,在登录到系统时,用户将被要求上传一个小文本文件,该文件将是fread,并分配给一个可以在整个系统中访问的var 如果这是可能的,那么这个变量是否只有在会话处于活动状态时才能被该用户访问 安全性是这里主要关注的问题,将var存储在会话变量中是否更实用 该计划: 数据库中的数据将通过mcrypt加密,密钥将存储在USB拇指驱动器上。用户将在访问系统时插入thumbdrive。登录后,应用程序将提示用户上传密钥。他们将导航到thumbdrive和key。通过
注意:var需要是持久性的,并且可以通过许多页面访问,Cookie已经过时。最好的解决方案可能是将其存储在会话变量中,在我看来,这似乎是管理此类数据的最佳方法,尽管这可能取决于文件的大小。
<?php
function first() {
global $foo;
$foo = 'bar';
}
function second() {
global $foo;
echo $foo;
}
first();
second();
?>
只需输入global关键字,您就可以在全局范围内粘贴任何您喜欢的内容。
虽然正如luke所说,听起来您应该使用自动会话变量。
我决定采用以下解决方案: 当用户登录到系统时,系统将提示他们上载密钥。上载脚本将分配一个唯一的随机文件名,并将文件放入临时目录 文件的路径将设置为会话变量。需要时,将从会话变量调用路径,并使用
file\u get\u contents()
检索密钥
会话结束或超时时,将删除会话变量,并通过取消链接()
删除文件本身
谢谢 有道理。然而,全球经济会持续下去吗?i、 e.当用户离开上传/fopen/fread发生的页面后,var是否仍然可以访问?我猜会话var的问题是cookies。如果系统唯一可以访问密钥的时间是在有实时会话时,我更愿意这样做。会话不需要使用cookie。您还可以将会话ID嵌入URL中。这可以确保一旦用户离开,会话就会丢失。