解析错误:语法错误,第 1 行 /home/designea/public_html/blog/blog_end/inc


Parse error: syntax error, unexpected T_VARIABLE in /home/designea/public_html/blog/blog_end/inc/comments.inc.php on line 1

我收到此错误"解析错误:语法错误,第 1 行/home/designea/public_html/blog/blog_end/inc/comments.inc.php 中的意外T_VARIABLE"有人可以帮助我吗?这是我的代码

<?php 
function get_gravatar( $email = $_POST['email1'], $s = 50, $d = 'mm', $r = 'g', $img = false, $atts = array() ) {
        $url = 'http://www.gravatar.com/avatar/';
        $url .= md5( strtolower( trim( $email ) ) );
        $url .= "?s=$s&d=$d&r=$r";
        if ( $img ) {
            $url = '<img src="' . $url . '"';
            foreach ( $atts as $key => $val )
                $url .= ' ' . $key . '="' . $val . '"';
            $url .= ' />';
        }
        return $url;
    }
?>

默认参数值不能不是文字,因此这是非法的:

$email = $_POST['email1']

一个典型的解决方法是编写

function get_gravatar( $email = null ) {
    if ($email === null) {
        $email = $_POST['email1'];
    }
}

但是,最好避免将函数的行为与这样的$_POST耦合。在你的鞋子里,我会完全删除默认值。