С учетом регистра, где утверждение в laravel

Как я могу совместить строку с совпадением символов с laravel?


SELECT * FROM `invites` WHERE `token`='OGwie2e2985tOEGewgu23hUFs'

Может быть сделано как

Invite::where('token',$token)->first()


Если мне нужен регистр, чувствительный к регистру, мне нужно использовать инструкцию вроде этого (или аналогичную, насколько мне известно):

SELECT * FROM `invites` WHERE BINARY `token`='OGwie2e2985tOEGewgu23hUFs'

Мое лучшее предположение:

Invite::whereRaw("BINARY `token`='{$token}'")->first()

но тогда мой ввод не проходит подготовленный оператор, правильно?

Ответ 1

Вам нужно будет использовать DB:: raw(), возможно, что-то вроде

Invite::where(DB::raw('BINARY `token`'), $token)->first();

или, альтернативно:

Invite::whereRaw("BINARY `token`= ?",[$token])->first()

Ответ 2

Немного поздно, но все же это не лучшая альтернатива?

Invite::whereRaw("BINARY `token`= ?", array($token))->first()