【发布时间】:2018-09-20 11:42:08
【问题描述】:
我对 PHP 没有经验,必须在以下代码中修改密码:
$body=array(
'userInfo' => array(
'userName' => $username,
'password' => $password,
'applicationKey' => $appKey,
),
);
变量$body既用于应用程序逻辑,也用于记录数组:
$this->logger->debug("REQUEST: URL[{$this->config->endpoint}] BODY: " . json_encode($body));
但我不应该记录密码。我想修改它。
我知道我可以将数组复制并粘贴到一个新变量 $body_with_password_hidden,但我想学习一些 PHP 习语,更不用说尽可能使代码库尽可能紧凑。
有什么优雅的方法可以做到这一点?用我更舒服的语言,我会克隆字典,并覆盖敏感值。我将如何在 PHP 中做到这一点?
更多信息
当前日志语句:
[2018-04-10T18:23:11+00:00] [DEBUG] REQUEST: URL[http://myservice.com/myendpoint/login] BODY: {"userInfo":{"userName":"Administrator","password":"Administrator","applicationKey":"abc123"}} -
所需的日志语句:
[2018-04-10T18:23:11+00:00] [DEBUG] REQUEST: URL[http://myservice.com/myendpoint/login] BODY: {"userInfo":{"userName":"Administrator","password":"********","applicationKey":"abc123"}} -
【问题讨论】:
-
和你说的一样——克隆值并删除键。
-
$body['userInfo']['password'] = '';应该做的伎俩。
-
阅读PHP arrays。您的问题的答案可以在"accessing with square brackets syntax" section 上找到。
标签: php