PHP-没有默认值的设置函数和没有输入值的调用函数

时间:2019-03-04 03:43:56

标签: php

我已将php版本从5.3更新到7.1。我检查了网站,发现了问题。

function getComment($comment_id){
    $comment_sql = "SELECT * FROM comment";

    if($comment_id){
         $comment_sql .= " WHERE id = '{$comment_id}'";
    }

    $comment = $db->query($comment_sql, true);
    $comment = is_array($comment)? $comment : array();

    return $comment;
}

echo getComment();

它可以在PHP 5.3中使用,但是不能在php 7中调用。我需要修改函数并设置默认值。

function getComment($comment_id = ""){
    $comment_sql = "SELECT * FROM comment";

    if($comment_id){
         $comment_sql .= " WHERE id = '{$comment_id}'";
    }

    $comment = $db->query($comment_sql, true);
    $comment = is_array($comment)? $comment : array();

    return $comment;
}

echo getComment();

是由PHP版本或PHP设置引起的吗?

1 个答案:

答案 0 :(得分:0)

这不是由配置选项引起的。而且我几乎可以肯定这不是PHP 7引起的,但是我需要其他人的意见。

最底层的是,您永远不要使用未初始化的变量,并且不要将未初始化的值作为业务逻辑的一部分。提供$ a的默认值。