我的方法不起作用,也没有返回数组

时间:2014-08-27 19:26:29

标签: php arrays oop object methods

我有一个名为 getPerso 的方法,它返回一个包含我的成员的所有信息的数组。这是方法:

public function getPerso($id)
{
    if(is_int($id))
    {
        $req = $this->_db->prepare('SELECT * FROM personnages WHERE id = :id');
        $req->execute(array(
            'id' => $id));
        $donnee = $req->fetch();
        $req->closeCursor();
        return $donnee;
    }
}

它只需要一个int作为参数。我使用$_SESSION['id'],其中包含为参数登录的成员的id。但是,当我执行此代码时:

$donnee = $manager->getPerso($_SESSION['id']);
var_dump($donnee, $_SESSION['id']);

我的$ donnee变量为空。这是我从var_dump得到的:

  

NULL string(1)“4”

我的$ donnee变量应该包含一个包含该成员所有信息的数组。希望有人有解决方案。

1 个答案:

答案 0 :(得分:0)

使用is_numeric()而不是is_int()。如果您将数字作为字符串

传递,则is_int()将返回false