【发布时间】:2018-06-11 21:30:51
【问题描述】:
我正在尝试在我的数据库中运行以下搜索查询:
User::selectRaw("*, MATCH(first_name, last_name)AGAINST(?)", [$search_string])
->whereRaw("MATCH(first_name, last_name)AGAINST(? IN BOOLEAN MODE)", [$search_string])
->limit(10)
->get();
这可以正常运行几次(有时只有一次),然后我收到错误InvalidArgumentException: Inf and NaN cannot be JSON encoded in file
将新用户添加到数据库时会暂时解决此错误,但在尝试运行查询后会很快返回。我认为这与查询返回的值有关。这个值有时是inf。为什么这个查询的行为如此不可预测?
【问题讨论】:
-
"为什么这个查询的行为如此不可预测?"这不是查询,我更相信 Laravel querybuilder 是这个问题的罪魁祸首。我还想打赌,如果你直接在数据库上尝试生成/编写的 SQL,它每次都会工作。
-
哦,你是对的!感谢您指出正确的方向,我会尝试找出 Laravel 出了什么问题