2 回答

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超1個(gè)贊
考慮到您有一組狀態(tài)代碼和狀態(tài)名稱:
$data = [
'AL' => 'Alabama',
'AK' => 'Alaska',
'AZ' => 'Arizona',
'CA' => 'California',
'CO' => 'Colorado'
];
用戶輸入
$query = 'ala';
所以用戶搜索'ala'它應(yīng)該得到兩種狀態(tài)。首先找到所有與搜索相關(guān)的狀態(tài)碼:
$result = array_filter($data, function ($item) use ($query) {
if (stripos($item, $query) !== false) {
return true;
}
return false;
});
$state_codes =array_keys($result);
$state_codes擁有與搜索相關(guān)的所有狀態(tài)代碼,現(xiàn)在您可以在查詢中使用:
$profiles = Profile::where('full_name','LIKE','%'.$query.'%')
->orWhere('area_description','LIKE','%'.$query.'%')
->orWhereIn('state',$state_codes)
->paginate(10);

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超8個(gè)贊
如果需要,您可以將狀態(tài)全名存儲(chǔ)在應(yīng)用程序配置中,例如,我將全名存儲(chǔ)在state.php配置文件夾中,如下所示:
return [
'CA' => 'California,
]
然后我可以通過這樣的鍵碼搜索全名:
$stateFullname = config('state');
$stateFullname[$profile->state];
在這里閱讀更多
- 2 回答
- 0 關(guān)注
- 117 瀏覽
添加回答
舉報(bào)