вставить сепаратор в строку по маске
буду признателен за другой возможный вариант этого кода:
<?php
$ISDevID = 'D824BDBA69D7';
$ISPoolID = sprintf("%s.%s.%s",
substr($ISDevID, 0, 4),
substr($ISDevID, 5, 4),
substr($ISDevID, 8, 4),
);
echo $ISPoolID;
$ISDevID достается из массива через foreach, заносится в другой массив, из которого уже в виде D824.BDBA.69D7 вытаскивается на сайт
Ответы (3 шт):
Автор решения: John Dow
→ Ссылка
Как правильно подсказали выше:
$ISDevID = 'D824BDBA69D7';
$ISPoolID = substr(chunk_split($ISDevID, 4,'.'), 0, -1);
Если не использовать substr ...... ,0,-1 появляется точка (в моем случае) в конце форматируемой строки
Автор решения: Daniil Loban
→ Ссылка
Как один из вариантов разбить регуляркой на 3 группы по 4 символа.
$string = 'D824BDBA69D7';
$pattern = '/^(.{4})(.{4})(.{4})/i';
$replacement = '$1.$2.$3';
echo preg_replace($pattern, $replacement, $string); //D824.BDBA.69D7
Автор решения: u_mulder
→ Ссылка
Еще вариант:
$ISDevID = 'D824BDBA69D7';
echo implode('.', str_split($ISDevID, 4));