我正在使用网格显示业务。我将把laravel的电话降至最低限度,所以可以说我有大约20,000家企业,如果不需要,我不想全部加载。因此,在显示网格以进行键入和查询之前,我将显示一个搜索栏,并根据他们的搜索输入,使用Laravel将匹配的内容加载到网格中。
我遇到的特殊字符问题。如果在数据库中我有一个Lucky's Bar的商业名称,并且用户搜索输入是不带撇号的Luckys Bar,则找不到结果。与斜线或破折号相同。
实现此目标的最佳方法是什么?
PHP-搜索语句
public function search($search_input) {
$response = DB::table(self::$table)
->select(array(
'ID',
'Signup_Date',
'Business_Name'
))
->where('Business_Name', 'LIKE', '%'.$search_input.'%')
->order_by('Signup_Date', 'desc')
->get();
return $response;
}
使用Laravel 3,是的,我知道它已经过时了,我们已经计划进行升级,但这是当前需要解决的问题。 https://laravel3.veliovgroup.com/docs/database/fluent
答案 0 :(得分:2)
一种可能慢得令人无法接受的方法是
WHERE REPLACE(field, "'", "") LIKE 'tam osha%"
在数据库中的位置存储为Tam O'Shanter
。