当我意外地var_dump()
一个子类的对象时,我有点担心,结果显示了我所有的sql元素和变量值,包括数据库用户名、密码和数据库名。它有安全问题吗。如果是,我如何保护它?如果有人给我一盏灯,我会很感激的。
$ClassObject=new MyChildClass();
var_dump($ClassObject);
样本结果如下:-
对象(MyChildClass)#1(17){[“数据库”:受保护]=
神奇的debugInfo方法就是这样做的。在类中,添加以下代码:
public function __debugInfo()
{
$properties = get_object_vars($this);
unset($properties['host']);
unset($properties['user']);
unset($properties['pass']);
return $properties;
}
工作原理:第一行检索当前实例中属性的完整列表。然后,使用unset
,我们删除所有不希望显示在var_dump
中的属性。
在第一个示例中,当在此对象上使用var_dump
时,将显示除3之外的所有属性。
或者使用更安全的方法:创建一个空数组,并仅用您想要显示的属性填充它:
public function __debugInfo()
{
$properties = [];
$properties[] = 'table';
$properties[] = 'queryString';
return $properties;
}
在第二个示例中,在此对象上使用var\u dump
时,仅显示2个属性。
通过将此方法添加到所有类中,您可以精确地控制使用var_dump
时显示的内容。
文档:\ u调试信息
问题内容: 在Redis中可以使用用户名,密码和数据库吗? 这个问题的原因是因为在官方的 pyramid_redis_sessions 文档(http://pyramid-redis- sessions.readthedocs.io/en/latest/gettingstarted.html )中,该参数… …(例如,在Python / Pyramid内部使用)建议使用用户名,密码和db。 但是,
我试着使用这种方法:Android-登录textView后显示sqlite数据库中的用户名 但我得到一个错误: 我想要的是在成功登录后在UserPanelActivity中显示当前昵称。 用户面板活动: DataBaseHelper: UserPanel.xml 登录活动: 谢谢你的帮助!:)
我被指派了一项集成API的任务。我已经能够从API获取信息,但出现了一个弹出窗口,要求我提交用户名和密码。我有用户名和密码,但我的想法是在不需要弹出窗口的情况下登录。 代码如下:
如何从java代码中使用用户名和密码创建mysql数据库?然后创建所有的表? 我在谷歌上搜索,发现了这个代码 但就我而言,我需要: -从java设置用户名和密码 创建所有的表 确保: > MySQL连接排序:utf8_general_ci 我的数据库和表排序规则设置为:utf8\u general\u ci或utf8\u unicode\u ci 然后我必须在MySQL中执行:设置名称utf8 设
我使用带thymeleaf 3的Spring靴 我试着展示一个豆子 在我的控制器里我有 在我的车里 在我的位置 在我的胸腺碎片中 当我试图显示这个片段时,我得到 org.attoparser。ParseException:异常评估SpringEL表达式:“cities.id”由:org.springframework.expression.spel引起。SpelEvaluationExceptio