@rusgayfer

Как преобразовать текстовые ссылки вк в гиперссылки?

Получаю записи из вк API и там есть ссылки такого вида

[id+++|name] - для пользователей 
[club++++|name] - для групп и пабликов


Как сделать через preg_replace в обычные ссылки вида <a href="ссылка" target="_blank">текст</a>
  • Вопрос задан
  • 154 просмотра
Решения вопроса 1
riot26
@riot26
<:З )~~
<?php
$text = '
[Оля Старицына|id8888], [id555|Надежда Созыкина], [id665|Катя Иванова]
';

$re = '/\[((id|club)\d+)\|([^\]]+)\]/';
$replacement = '<a href="https://vk.com/$1" target="_blank">$3</a>';

$text = preg_replace($re, $replacement, $text);
echo $text;


Вывод:
[Оля Старицына|id8888], <a href="https://vk.com/id555" target="_blank">Надежда Созыкина</a>, <a href="https://vk.com/id665" target="_blank">Катя Иванова</a>
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
gromdron
@gromdron
Работаю с Bitrix24
Я перепутал что-то или это то что вы хотели?

$regex = "#\[id([0-9]+)\|([^\]]+)\]#";
$testString = 'Как же хорого побывать в группе [id123|Привет Мир!]';

// Напечатает: Как же хорого побывать в группе <a href="123" target="_blank">Привет Мир!</a>
echo preg_replace($regex, '<a href="$1" target="_blank">$2</a>', $testString);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
25 апр. 2024, в 20:02
100000 руб./за проект
25 апр. 2024, в 19:42
49000 руб./за проект
25 апр. 2024, в 19:41
2000 руб./за проект