我希望创建一个打印出源代码的链接,我不知道为什么更换标签(“<”和“>”)将无效,如果有解决方案的话。
<?php
$key = "";
if(isset($_REQUEST["key"])){
$key = $_REQUEST["key"];
}
$code = '
<html>
<head>
<meta charset="utf-8"/>
<title>Test</title>
<style>
h1 {
text-align: center;
}
h4 {
text-align: left;
}
</style>
</head>
<body>
<a href="?key=y"> <h1> Source code </h1> </a>
</body>
</html>
';
echo($code);
if($key == "y"){
str_replace("<", "<", $code);
str_replace(">", ">", $code);
echo("<h4>" . $code . "</h4>");
}
?>
感谢任何帮助。
答案 0 :(得分:1)
你不保存str_replace函数的结果
field
答案 1 :(得分:0)
正如Thamaizhan已经说过的那样,您应该使用htmlentities
而不是手动替换这两个字符。
忽略#1,您的具体问题是由于未在任何地方分配str_replace
的结果而导致的。您需要$code = str_replace(......, $code);
。
答案 2 :(得分:0)
$code = str_replace("<", "<", $code);
$code = str_replace(">", ">", $code);
答案 3 :(得分:0)
if($key == "y"){
echo("<h4>" . htmlspecialchars($code) . "</h4>");
}