Добрый день, подскажите нужно отредактировать отправленно сообщение в телеграм боте, но нужно изменить только инлайновую клавиатуру, а текст оставить тот же со стилями. Так при кол беке приходит текст сообщения, а стили в отдельном массиве:
[0] => Array
(
[offset] => 3
[length] => 8
[type] => bold
)
[1] => Array
(
[offset] => 21
[length] => 12
[type] => phone_number
)
[2] => Array
(
[offset] => 21
[length] => 12
[type] => bold
)
[3] => Array
(
[offset] => 49
[length] => 1
[type] => bold
)
[4] => Array
(
[offset] => 61
[length] => 1
[type] => bold
)
То есть текст нужно перевести в html формат, где собственно в присылаемом массиве и находятся координаты этих сущностей.
Просто текст <b>тект 1</b> тут какой -то текст
Есть какие либо идеи как это сделать можно. Пытался сделать простым смещением символом:
$formatText="Просто сторока";
$posIns=strlen($formatText)-$origLen;
$off=$value["offset"];
$to=$value["length"];
$onepart = mb_substr($formatText, 0, ($off-1)+$posIns);
$twopart = mb_substr($formatText, $off, $to);
$threepart = mb_substr($formatText, $to+$off+$posIns, strlen($formatText)-($to+$off+$posIns));
if ($value["type"]=="bold"){$formatText=$onepart."<b>".$twopart."</b>".$threepart;}
Но в даном варианте не будет учитываться вложеные стили. Какие есть варианты, как это можно решить?