#mysql #laravel #eloquent #laravel-7
#mysql #laravel #красноречивый #ларавель-7
Вопрос:
У меня есть запрос, подобный этому:
select c.order_id,sum(c.final_for_referraler) as sum,u.email
from exchaino_app.commissions as c
left join exchaino_app.orders as o on c.order_id = o.id
left join exchaino_app.users as u on c.order_user_id = u.id
group by c.order_id,c.order_user_id;
Он возвращает ответ, подобный этому :
order_id sum email
1 10 john@gmail.com
2 11 johnesmit@gmail.com
Я хочу заменить адрес электронной почты некоторым *
это должно быть возвращено следующим образом:
jo**@gmail.com
jo******@gmail.com
на стороне запроса или laravel без foreach.
Комментарии:
1. используете ли вы необработанный запрос в своем laravel?
2. Я бы сделал это в коде приложения после получения открытого текста электронной почты.
3. @sta Это не имеет значения, я могу его использовать.
4. @HamidNaghipour тогда я предлагаю вам использовать str_replace() или preg_replace() на blade, если вы не используете ответ API
5. @sta спасибо. У меня нет блейд-файла, и он мне нужен в ответе API.
Ответ №1:
Взгляните на функцию mysql regexp_replace. Я думаю, вы могли бы использовать это в запросе, чтобы перехватить шаблон адреса электронной почты.
https://dev.mysql.com/doc/refman/8.0/en/regexp.html#function_regexp-replace