当我尝试使用laravel索引文档时,我收到错误。
这是我的主要代码。通过使用die语句,我发现我收到此错误“[MongoDB \ Driver \ Exception \ InvalidArgumentException]在您的平台上检测到整数溢出:300000000000”一旦执行第一行: $ users = User :: all();
$users = User::all();
foreach ($users as $user) {
$temp=$user['attributes'];
unset($temp['_id']);
$params = [
'index' => 'test_index',
'type' => $temp['vehicle_type'],
'id' => $temp['lid'],
'body' => $temp
];
print_r($params); die;
$response = $client->index($params);
set_time_limit(100);
}
}``
我正在使用https://github.com/jenssegers/laravel-mongodb来连接Laravel和mongoDB。 我的用户模型看起来像这样
use Jenssegers\Mongodb\Eloquent\Model as Eloquent;
class User extends Eloquent
{
protected $connection = 'mongodb';
protected $collection = 'Test4';
}
Test4包含大数据。但是,我确保我的映射中没有任何整数可能导致整数溢出错误。请帮助我。我是Laravel和MongoDB的新手 我很乐意提供可能需要的任何进一步信息。
此外,当我尝试减少映射和索引中的字段数时,我得到此错误“PHP致命错误:允许的内存大小为134217728字节耗尽(尝试分配40个字节)在C:\ xampp \ htdocs \ ProTest1第392行上的\ vendor \ jenssegers \ mongodb \ src \ Jenssegers \ Mongodb \ Query \ Builder.php“
答案 0 :(得分:0)
感谢Neil Lunn,您的反馈确实很有帮助。实际上我一次访问所有数据,消耗大量内存。所以相反,我尝试使用下面的代码一次提取大量数据。
{{1}}