forked from GNUsocial/gnu-social
[DB] Refactor findOneBy method
This commit is contained in:
parent
8e743eabb9
commit
55710aa33d
@ -176,14 +176,13 @@ abstract class DB
|
|||||||
public static function findOneBy(string $table, array $criteria, ?array $orderBy = null, ?int $offset = null)
|
public static function findOneBy(string $table, array $criteria, ?array $orderBy = null, ?int $offset = null)
|
||||||
{
|
{
|
||||||
$res = self::findBy($table, $criteria, $orderBy, 2, $offset);
|
$res = self::findBy($table, $criteria, $orderBy, 2, $offset);
|
||||||
if (count($res) == 1) {
|
switch (count($res)) {
|
||||||
|
case 0:
|
||||||
|
throw new NotFoundException("No value in table {$table} matches the requested criteria");
|
||||||
|
case 1:
|
||||||
return $res[0];
|
return $res[0];
|
||||||
} else {
|
default:
|
||||||
if (count($res) == 0) {
|
throw new DuplicateFoundException("Multiple values in table {$table} match the requested criteria");
|
||||||
throw new NotFoundException("No value in table {$table} matches the requested criteria");
|
|
||||||
} else {
|
|
||||||
throw new DuplicateFoundException("Multiple values in table {$table} match the requested criteria");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user