为什么echo()输出的base64_decode()无法在浏览器中完全显示?

Sil*_*ght 0 php base64 encode decode

请看下面的代码:

<?php
$str = 'PD9waHANCiRzdHJpbmcgPSAiYmVhdXRpZnVsIjsNCiR0aW1lID0gIndpbnRlciI7DQoNCiRzdHIg
PSAnVGhpcyBpcyBhICRzdHJpbmcgJHRpbWUgbW9ybmluZyEnOw0KZWNobyAkc3RyLiAiPGJyIC8+
IjsNCg0KZXZhbCgiXCRzdHIgPSBcIiRzdHJcIjsiKTsNCmVjaG8gJHN0cjsNCj8+IA==';
echo base64_decode($str);
?>
Run Code Online (Sandbox Code Playgroud)

这是一个简单的PHP代码,您可以使用以下URL解码base64字符串:http:
//www.base64decode.org/

为什么这个例子中的base64_decode()函数无法完成它的工作.输出如下:

"; eval("\$str = \"$str\";"); echo $str; ?>  
Run Code Online (Sandbox Code Playgroud)

代替 :

<?php
$string = "beautiful";
$time = "winter";

$str = 'This is a $string $time morning!';
echo $str. "<br />";

eval("\$str = \"$str\";");
echo $str;
?> 
Run Code Online (Sandbox Code Playgroud)

问题是什么?如何解决大代码?

编辑:
输出有一个不可见的部分,我可以通过页面源找到它.
但为什么我们有这种反应?
提前致谢

Ign*_*ams 5

问题是您将其视为HTML.如果您查看源代码或传递标题以使浏览器将其解释为文本,您将看到整个内容.