Php 如何从这个静态方法返回值?

Php 如何从这个静态方法返回值?,php,Php,我试图从checkForDuplicateUniqueId下面的静态方法返回一个值 假设db表中有一个现有的$uniqueValue,我们想要的新唯一值是2 $uniqueValue = 1; public static function checkForDuplicateUniqueId($table, $columnName, $uniqueValue, $db) { $sql = "SELECT COUNT(`$columnName`) as noOfResults FROM

我试图从checkForDuplicateUniqueId下面的静态方法返回一个值

假设db表中有一个现有的$uniqueValue,我们想要的新唯一值是2

$uniqueValue = 1;

public static function checkForDuplicateUniqueId($table, $columnName, $uniqueValue, $db) {

    $sql = "SELECT COUNT(`$columnName`) as noOfResults FROM `$table` WHERE `$columnName` = '$uniqueValue'";

    if($db->fetchOne($sql)['noOfResults'] < 1) { // not found

        return $uniqueValue;

    } else {

        $uniqueValue++;

        self::checkForDuplicateUniqueId($table, $columnName, $uniqueValue, $db);

    }

上面的echo语句不输出任何内容。

您没有从其他部分返回任何内容。这样做:

return self::checkForDuplicateUniqueId($table, $columnName, $uniqueValue, $db);

工作起来很有魅力。谢谢,我打算去。S/O不允许您在提问后几分钟内接受回答。
echo Helper::checkForDuplicateUniqueId('issue_materials_log', 'date', $timeStamp, $this->db);
return self::checkForDuplicateUniqueId($table, $columnName, $uniqueValue, $db);