麻烦小的PHP函数Http Error 500

时间:2012-07-05 16:32:19

标签: php http

我只是在学习php,为了练习我想尝试制作一个可以在文档中轻松生成CSS3渐变的php函数。

我遇到HTTP错误500.这是代码:

<?php
function cgrad($c1,$c2,$applyto)
{
echo 
"<style type="text/css">
$applyto {
background-image: -ms-linear-gradient(top, $c1 0%, $c2 100%);
background-image: -moz-linear-gradient(top, $c1 0%, $c2 100%);
background-image: -o-linear-gradient(top, $c1 0%, $c2 100%); 
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, $c1), color-stop(1, $c2));
background-image: -webkit-linear-gradient(top, $c1 0%, $c2 100%);
background-image: linear-gradient(to bottom, $c1 0%, $c2 100%);
height : 100%;
width : 100%;}
</style>";
};
?>
<html>
<head>
<?php
cgrad(#FFFFFF,#000000,body);
?>
</head>
<body>
testing
</body>
</html>

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:5)

echo 
"<style type="text/css">

你不能在双引号内加双引号。你可以逃脱它们(就像其他答案所说)或使用单引号。

echo 
"<style type='text/css'>

此外,在致电cgrad时需要引号。

<?php
cgrad('#FFFFFF','#000000','body');
?>

答案 1 :(得分:2)

echo 
"<style type="text/css">

你使用引号来分隔你的echo语句,并在其中 - PHP无法弄清楚哪些引号是什么。一种方法是转义echo语句中的引号:

echo 
"<style type=\"text/css\">