【发布时间】:2012-05-04 13:09:46
【问题描述】:
我在 CodeIgniter 的控制器中有一个函数,如下所示:
public function age($var = null)
{
$data = $this->mongo_db
->where('age', $var)
->get('users');
echo "<pre>";
print_r($data);
echo "</pre>";
}
当我导航到http://www.siteurl.com/controller/age/25 时,它应该会带回所有年龄为 25 岁的文档,但它没有返回任何数据。
如果我将查询修改为以下内容,则可以正常工作...
public function age($var = null)
{
$data = $this->mongo_db
->where('age', 25)
->get('users');
echo "<pre>";
print_r($data);
echo "</pre>";
}
这可能是非常简单的事情,但我是 codeigniter 的新手,我就是看不出出了什么问题!
任何帮助将不胜感激。提前致谢!
【问题讨论】:
-
很难说是哪里出了问题。从您发布的代码来看,它似乎没有任何问题。你能发布
var_dump(func_get_args());的输出吗? -
输出为
array(1) { [0]=> string(2) "20" }。如果我做一个简单的 echo $var,它将打印变量......它似乎只是忽略变量的 mongo_db 查询。 -
在这种情况下,您可能需要提及您使用的是哪个库。据我所知,用于 CI 的 MongoDB 库不止一个。你可能会更好地咨询图书馆作者。
-
好点!我应该马上提到这一点。我正在使用Alex Bilbie Codeigniter mongo library
-
你能发布
var_dump($this->mongo_db->where);的输出吗?当然是在你调用where()方法之后。
标签: php codeigniter mongodb mongodb-php