<?php
function tag($str,$pos1,$pos2)
{
$offset=-1;
$arrs=explode("-",$str);
list($pos1,$pos2)=array(min($pos1,$pos2),max($pos1,$pos2));
foreach($arrs as &$chunk)
{
$len=strlen($chunk);
if($offset+1>$pos2) break;
if($offset+1<=$pos2 && $offset+$len>=$pos2)
{
$chunk=substr($chunk,0,$pos2-$offset-1)."<span style='color:red'>".substr($chunk,$pos2-$offset-1,1)."</span>".substr($chunk,$pos2-$offset);
}
if($offset+1<=$pos1 && $offset+$len>=$pos1)
{
$chunk=substr($chunk,0,$pos1-$offset-1)."<span style='color:red'>".substr($chunk,$pos1-$offset-1,1)."</span>".substr($chunk,$pos1-$offset);
}
$offset+=$len;
}
return $arrs;
}
print_r(tag("55798-45366-11255-48084-35644-28027-85391-45536-85002-55350-4166-5991-0313-3681-9382-9143-2852-8142-8643-0235-875-383-839-92-91-00-81",25,87));
?>
preferences:
37.85 ms | 402 KiB | 5 Q