【发布时间】:2012-05-17 18:37:32
【问题描述】:
请看下面的代码:
<?php
$str = 'PD9waHANCiRzdHJpbmcgPSAiYmVhdXRpZnVsIjsNCiR0aW1lID0gIndpbnRlciI7DQoNCiRzdHIg
PSAnVGhpcyBpcyBhICRzdHJpbmcgJHRpbWUgbW9ybmluZyEnOw0KZWNobyAkc3RyLiAiPGJyIC8+
IjsNCg0KZXZhbCgiXCRzdHIgPSBcIiRzdHJcIjsiKTsNCmVjaG8gJHN0cjsNCj8+IA==';
echo base64_decode($str);
?>
这是一个简单的 php 代码,您可以使用以下 URL 解码 base64 字符串:
http://www.base64decode.org/
为什么这个例子中的 base64_decode() 函数不能完成它的工作。 输出如下:
"; eval("\$str = \"$str\";"); echo $str; ?>
而不是:
<?php
$string = "beautiful";
$time = "winter";
$str = 'This is a $string $time morning!';
echo $str. "<br />";
eval("\$str = \"$str\";");
echo $str;
?>
有什么问题,我该如何解决大代码?
编辑:
输出中有一个不可见的部分,我可以通过页面来源找到它。
但是为什么我们会有这种反应呢?
提前致谢
【问题讨论】:
-
永远不要默认假设某些东西被破坏了 - 默认假设你做错了。
-
在您的 Internet Explorer 中,右键单击该网页,然后单击“查看源代码”。都在那里。
-
嗨,我很抱歉耽搁了。我看到了页面源,不可见的部分就在那里。那到底是怎么回事?
-
@Xeoncross 除非它的 Internet Explorer。你可以放心地假设它坏了:)