PHP json_encode();排除数组

时间:2015-08-03 10:44:42

标签: php

在我的数组中,我有很长的变量用作安全令牌,以防止那些没有PHP服务器权限的人。 但是,如果变量通过安全墙,我希望能够记录数据以查看错误操作,但我似乎无法找到一种方法来排除某些变量以防止我的日志文件太大并且经常轮换。

logissue("User ".$authname." is now preforming ".json_encode($data));

返回并记录这一大块数据..

66.***.***.**  2015/08/03 06:28:52  User Nickoplier is now preforming {"Validate":"n@xrbycrzF6*au8c8.....","Action":"message","auth":":ZzWh[a....","Parameter1":"2933***","Parameter2":"hello :D","Parameter3":"just a test"}

是否可以排除日志“验证”和“验证”?

1 个答案:

答案 0 :(得分:3)

是的,只需添加:

unset($data['Validate'], $data['auth']);

在将数组转换为JSON之前的行。你可以使用尽可能多的数组键来复制它。您甚至可以排除子数组的子键:unset($data['stuff']['more-stuff']['field'])

这将删除该键,因此更好的方法是将整个组件包装在一个函数中并传递$data