我在两个页面之间存在不一致.PHP正在转储变量,我需要能够在变量中看到原始数据而不使用HTML渲染渲染可能存在于其中的任何内容。
帖子呈现的版本是100%相同,但是当我接受字符串和hash_hmac然后他们得到不同的结果哈希。
有没有办法转储这些字符串并查看原始数据?
我想到了几种选择。或
header('Content-Type: text/plain');
<pre>
元素中。您可能也对xdiff感兴趣。
在php中尝试strip_tags
函数这将srip所有标签
要么
用这个
header('Content-Type: text/plain');
我试过,这不行。我正在制作一个亚马逊FPS系统并且签名无效,因为他们很难在帖子请求中呈现新行以进行签名。我构建的系统有空格。发布后我将结果转储到数据库中,并在数据库中说它有换行符。
答案:取出字符串并将其转储到数据库中。然后使用数据库查看差异。这是我找到解决问题的唯一方法。
我使用此函数将数组值打印到屏幕:
function PrintArray($array)
{
echo " <pre>";
print_r($array);
echo " </pre> ";
}
例如,要获取对发布数据的访问权限:
if ($submit)
{
if ($debug)
{
printarray($_POST);
}
}
其余的脚本数据(未通过标记立即显示)将需要在$ debug条件语句中回显/打印到文件。
您应该构建应用程序,以便在可能发现问题的地方包含调试语句。在页面顶部,声明$ debug = true; (或在不使用时将其设置为false)。
编辑:
顺便说一句,在我的环境中,如果脚本是从生产中提供的(以编程方式检测),则关闭调试语句。它们只能在test中显示,并且$ debug设置为true。正如评论者在下面写的那样,您不应该在生产/实时应用程序中显示(或允许通过错误)调试信息。
最好将调试信息写入驻留在Web根目录下的文件中。