php - 从 php 文件中包含两次变量
问题描述
我有一个像这样的简单用户文件
乔.php
<?php
$pass = 'joepassword';
$userpath = 'work/joe';
?>
山姆.php
<?php
$pass = 'sampassword';
$userpath = 'work/sam';
?>
我使用这些文件进行文本身份验证,一旦用户登录并在检查身份验证时为该用户设置路径,就会包含一个文件。一旦通过身份验证,我立即用“文本”覆盖该 $pass 变量,因此密码不能用作窥探的变量。
现在我需要以“joe”身份登录
所以我包括 joe.php sessing $userpath
$userpath='work/joe'
我现在需要出于管理目的,同时访问 sam 的 $userpath 作为目标,并同时访问 joe 的 $userpath 作为源,但是如果我包含 sam.php,我将过度使用 joe 的 $userpath
我认为有一个更简单的解决方案,例如使用 fopen 并仅提取 sam 的(第二个)路径,但不知道如何去做。
我不是为了安全讲座而发布此内容,因此请不要回应有关安全性的问题。无论如何,这些文件不在 Web 服务器可访问的文件夹中。
解决方案
让他们上课:
class Sam() {
public $userPath;
public $password;
public __construct($path,$password) {
$this->userpath = $path;
$this->password = $password;
}
}
class Joe() {
public $userPath;
public $password;
public __construct($path,$password) {
$this->userpath = $path;
$this->password = $password;
}
}
$joe = new Joe("user path here", "my password");
$sam = new Sam("another user path", "another password");
echo $joe->userPath;
echo $sam->userPath;
echo $joe->password;
echo $sam->password;
推荐阅读
- asp.net-mvc - 如何在 ASP.NET MVC 5 中更改和应用当前用户的角色
- r - ggplot 的问题 - 如何将 y 轴标签设置为粗体、编辑图例标题和调整误差线的宽度
- c# - 如何使用 renci 库在 sftp 中移动文件?
- javascript - Javascript 值在 AJAX 中被取消。
- mongodb - 在聚合内将 ISODate 增加 x 天
- xpath - XPATH如何从同一个父母中选择两个特定的孩子
- javascript - 传递给 PHP 文件的 AJAX 数据给出“未定义索引”错误
- c# - 无法使用服务容器中的服务和默认值来实例化 SwaggerGenerator 类型的构造函数
- database - 理解 Cassandra Db 中的隔离
- html - 如何获得不超过页面宽度 100% 的 bootstrap 4 flex 表?