VK API wall.get() текст

150
30 октября 2017, 23:55

Ребят, нужна помощь с VK API.

Использую метод wall.get() (возвращает список записей со стены сообщества). При выводе текста записи столкнулся с тем, что в нем могут быть куча ссылок и хэштегов и все они хранятся в текстовом виде. То есть ячейка ['text'], а в ней

"Что почитать начинающему тимлиду: Василий Половнёв делится материалами, которые хотел бы прочитать в начале пути — http://vasily.polovnyov.ru/posts/team-leadership-links.html #article@forwebdev #russian@forwebdev #collection@forwebdev"

Каким образом сделать, что бы ссылки отображались не как текст, а как ссылка? Регулярным выражением или есть еще какой то способ?

Answer 1

Примерно так можно решать:

$text = 'Что почитать начинающему тимлиду: Василий Половнёв делится материалами, которые хотел бы прочитать';
$text .= 'в начале пути — http://vasily.polovnyov.ru/posts/team-leadership-links.html #article@forwebdev #russian@forwebdev #collection@forwebdev #russian #article';
//ссылки на гипреактивные
$text = preg_replace('%(https?://[^ ]{4,})%isu', '<a href="\1">\1</a>' ,$text);
//хештеги #хештег
$text = preg_replace('%#([^ @]{0,})(?:$|\s)%isu', '<a href="https://vk.com/feed?section=search&q=\1">#\1</a> ' ,$text);
//хештеги с поиском по группе   #russian@forwebdev
$text = preg_replace('%#([^ ]{1,})@([^ ]{1,})%isu', '<a href="https://vk.com/\2/\1">#\1@\2</a>' ,$text);
echo $text;
READ ALSO
Конвертирование базы данных из MySQL в SQLite

Конвертирование базы данных из MySQL в SQLite

Информация в базе MySQL на хостинге обновляется парсером на PHP каждый деньКак сделать так, чтобы после каждого обновления информации в базе...

168
Доступ к объектам в массиве указателей

Доступ к объектам в массиве указателей

К примеру у меня есть 2 массива указателей:

208
Ошибкa в статическом массиве

Ошибкa в статическом массиве

Метод printf принимает первым параметром строку, а затем несколько значений, которые будут подставлены в эту строкуВ вашем коде в printf передаётся...

252
Как взаимно заменить числа в файле

Как взаимно заменить числа в файле

Всем доброго времени суток,

316