【问题标题】:how to get id from post table rest api?如何从 post table rest api 获取 id?
【发布时间】:2017-11-19 11:24:39
【问题描述】:

任何人都可以帮助我。 我想让 json_encode 从 id 获取

localhost/restful/auth/posts/1

我的代码是这样的

@List($objnm, $objid) = explode('/', $_GET['url']);

if ($objnm == "posts")
    {
        $posts = $db->query('SELECT * FROM post');
        echo json_encode($posts, JSON_PRETTY_PRINT);

        if($objid == "1")
        {
            echo 'susah bnget';
            $id = $db->query('SELECT * FROM post where id=1');
            echo json_encode($id, JSON_PRETTY_PRINT);
        }
    }

get_id_from_post_table

【问题讨论】:

  • 不清楚你在问什么......

标签: php rest uri


【解决方案1】:

例如,您可以这样做:

$url = $_GET['url'];

$chunks = preg_split("#\/#u", $url, -1, PREG_SPLIT_NO_EMPTY);
$count = count($chunks);
$lastChunk = $chunks[$count-1];

// Detect: use findAll or FindOneById
if (is_numeric($lastChunk)){
    $id = $lastChunk;
    $entityName = $chunks[$count-2];
} else {
    $id = null;
    $entityName = $chunks[$count-1];
}

// Create sql query string
$sql = "SELECT * FROM";
switch ($entityName) {
    case "posts":
        $sql .= ' post';
    break;
    case "something_else":
        $sql .= ' something_else';
        break;
    default:
        throw new Exception("$entityName doesn't expected");
}
if (!is_null($id)) {
    $sql .= " WHERE id = $id";
}

$result = $db->query($sql);
echo json_encode($result, JSON_PRETTY_PRINT);

【讨论】:

    猜你喜欢
    • 2021-09-23
    • 2013-09-08
    • 2021-11-21
    • 1970-01-01
    • 2014-07-30
    • 1970-01-01
    • 1970-01-01
    • 2018-11-16
    • 1970-01-01
    相关资源
    最近更新 更多