我在apache中收到以下错误:
[notice] child pid 13190退出信号分段错误(11)
当我尝试回显,var_dump等...我的会话写入函数中的$ data变量时,似乎只会发生这种情况。任何奇怪的事情是,如果我不尝试使用此代码var_dump $ data:
if($this->read($id) == '')
{
$this->sessionCollection->insert($data, array('safe' => true));
}
else
{
$this->sessionCollection->update(array('_id' => $data['_id']), $data, array('safe' => true));
}
php抛出:
警告:MongoCollection :: insert()要求参数1为数组 或对象
任何人都知道可能导致这种情况的原因吗?
答案 0 :(得分:2)
在我看来,第3行(...->insert($data ...)
)$data
不是数组,而是标量。但是,MongoCollection需要一个数组documented here
我会var_dump($data)
看看里面是什么。
答案 1 :(得分:0)
显然,如果在会话写入处理程序的write方法中使用exit(),则段错误是正常结果。我放入了退出,因为我想看到$ data变量,因为它看起来不像数据正确保存。现在我知道$ data变量是序列化数组的一个strng,它似乎工作正常。