Мой код выглядит так:Как использовать замену в выбранном запросе? (Laravel 5,3)
public function getList()
{
$query = self::join('master_datas','master_datas.id','=','users_banks.bank_id')
->orderBy('account_name')
->findAll([
'users_banks.*',
'master_datas.name',
DB::raw('replace(master_datas.information->logo, \'"\', "")')
]);
return $query;
}
Итак, у меня есть информация поле. Информация о поле в виде JSON как это:
{"logo": "icon-chelsea.png", "branch": "london", "owner": "chelsea"}
Когда я звоню information->logo
, результат: "icon-chelsea.png"
.
Я хочу удалить двойные кавычки. Я попытался использовать мой код выше, используя замену. Но это не сработало
Я добавил use Illuminate\Support\Facades\DB;
. Но, это то же самое
Есть ли кто-нибудь, кто может мне помочь?
Когда вы говорите, вы хотите «удалить двойные кавычки». Как они были сохранены в базе данных таким образом? Исправьте точку входа, а не точку выхода. Кроме того, строки всегда должны быть инкапсулированы в одну/двойную кавычку, если вам нужно постоянное представление значения, то это нечто совершенно другое. – Ohgodwhy
Как вы называете «информация-> логотип»? – Tom
Неужели это JSON String? Если вы 'json_decode()' it, у него больше нет двойных кавычек. Но если вы удалите двойную кавычку вручную, она больше не будет действительной строкой JSON – RiggsFolly