現在laravelで検索機能を作成しています。
code: 'T01234'と'T56789'があるとします。
入力フォームに01234,56789とカンマ区切りで入力すると、codeのT01234、 T56789のデータが検索できるようにしたいのですが、現状だと、カンマ区切りと、部分一致で実装しています。
それをカンマ区切りでも部分一致検索ができるようにしたいです。
調べてみたのですが、自分で解決できなかったためお力添えいただきたいです。
よろしくお願いいたします。
【エラー内容】
local.ERROR: Argument 1 passed to Illuminate\Database\Query\Builder::cleanBindings() must be of the type array{"userId":1,"exception":"[object] (Symfony\Component\Debug\Exception\FatalThrowableError(code: 0): Argument 1 passed to Illuminate\Database\Query\Builder::cleanBindings() must be of the type array, string given,
【検索機能一部抜粋】
public function scopeOfCode(Builder $builder, ?string $code) { if (blank($code)) { return $builder; } return Str::contains($code, ',') ? $builder->whereIn('code', 'like', explode(',', '%' . addcslashes($code, '%_\') . '%')) : $builder->where('code', 'like', '%' . addcslashes($code, '%_\') . '%'); }
回答1件
あなたの回答
tips
プレビュー