代码之家  ›  专栏  ›  技术社区  ›  Centell

带有调用过程的PHP rest API[关闭]

  •  1
  • Centell  · 技术社区  · 7 年前

    我经常创建这样的API:

    public function getUserInfo($id) {
        $stmt = $this->conn->prepare("SELECT id, email FROM users WHERE id = ? ");
        $result = array();
    
        $stmt->bind_param("s", $id);
        $stmt->execute();
        $stmt->bind_result($id, $email);
        $stmt->fetch();
    
        $result['id'] = $id;
        $result['email'] = $email;
    
        return $result;
    }
    

    然而,我需要使用过程开发API。我的代码不起作用。

    public function getUserInfo($id) {
        $stmt = $this->conn->prepare("call getUser( ? )");
        $result = array();
    
        $stmt->bind_param("s", $id);
        $stmt->execute();
        $stmt->bind_result($id, $email); // error here
        $stmt->fetch();
    
        $result['id'] = $id;
        $result['email'] = $email;
    
        return $result;
    }
    

    在这种情况下,我需要做什么才能获得id和电子邮件?

    1 回复  |  直到 7 年前
        1
  •  1
  •   tadman    7 年前

    不要打电话 fetch() 如果还需要列名,请调用 fetch_row() :

    $result = $stmt->fetch_row();