解析错误:语法错误,第1行/home/designea/public_html/blog/blog_end/inc/comments.inc.php中的意外T_VARIABLE

时间:2012-06-28 07:36:09

标签: php

我收到此错误“解析错误:语法错误,第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;
    }
?>

1 个答案:

答案 0 :(得分:5)

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

$email = $_POST['email1']

典型的解决方法是编写

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

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