DAO 追加
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
<?php
|
||||
|
||||
namespace Dao;
|
||||
|
||||
|
||||
class
|
||||
Thread
|
||||
{
|
||||
public function
|
||||
get_threads (
|
||||
SQLite3 $db)
|
||||
: array
|
||||
{
|
||||
$sql = "
|
||||
SELECT
|
||||
t.id,
|
||||
t.title,
|
||||
t.explain,
|
||||
MAX(r.date) AS latest
|
||||
FROM
|
||||
threads AS t
|
||||
LEFT OUTER JOIN
|
||||
responses AS r
|
||||
ON
|
||||
r.threads_id = t.id
|
||||
WHERE
|
||||
t.id <> 1
|
||||
-- AND t.deleted = 0
|
||||
GROUP BY
|
||||
t.id
|
||||
ORDER BY
|
||||
latest DESC";
|
||||
|
||||
$result = $db -> query ($sql);
|
||||
|
||||
$threads = [];
|
||||
|
||||
while (($row = $threads -> fetchArray (SQLITE3_ASSOC)) !== false)
|
||||
{
|
||||
$thread = new Dto\Thread;
|
||||
|
||||
$thread -> id = $row['id'];
|
||||
$therad -> title = $row['title'];
|
||||
$thread -> explain = $row['explain'];
|
||||
$thread -> latest = $row['latest'];
|
||||
|
||||
$threads[] = $thread;
|
||||
}
|
||||
|
||||
return $therads;
|
||||
}
|
||||
}
|
||||
|
||||
+5
-4
@@ -6,9 +6,10 @@ namespace Dto;
|
||||
class
|
||||
Thread
|
||||
{
|
||||
public int $id;
|
||||
public string $title;
|
||||
public ?string $explain;
|
||||
public bool $deleted;
|
||||
public int $id;
|
||||
public string $title;
|
||||
public ?string $explain;
|
||||
public ?DateTime $latest;
|
||||
public bool $deleted;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user