这个问题在这里已经有答案了:
utf-8全程(16个答案)
两年前关门了。
我想为我的网站做一个搜索引擎。除非一个词中有重音,否则它是有效的。
例如,如果我有一个标题:“musé如果我写的是“波杜因博物馆”或“穆斯”é它不显示任何东西。如果我只写“波杜因”,那就是工作。
如果我的文章标题有重音,我就找不到了。
如何做?
public function searchNav(Request $request)
{
$search = $request->get('search');
$buildings = Building::where('title', 'LIKE', '%' . $search . '%')->orWhere('city', 'LIKE', '%' . $search . '%')->published()->get();
$events = Event::where('title', 'LIKE', '%' . $search . '%')->orWhere('city', 'LIKE', '%' . $search . '%')->published()->get();
// Create a new collection and merge elements
$all = new Collection();
$all = $all->merge($buildings);
$all = $all->merge($events);
$all = $all->sortByDesc('updated_at');
$this->data['items'] = $all->all();
return view('pages.search-nav-results', $this->data);
}
谢谢
1条答案
按热度按时间iyr7buue1#
这听起来像是一个编码问题,这意味着您当前的编码不支持重音字符。下面是一种使用utf-8编码创建mysql数据库的方法,它肯定会支持示例中的重音字符:
假设您还没有使用支持这些重音字符的编码,这将修复mysql方面的问题。在php方面,这有点复杂,但是您还需要确保支持正确的编码。我建议你到一个很好的博客网站,其中涵盖了php的细节。