Функцыя sscanf
Функцыя sscanf
аналізуе радок, выкарыстоўваючы паказаны фармат,
і вяртае значэнні. Першым параметрам функцыя прымае радок для аналізу,
другім - радок фармату, а наступныя параметры (неабавязковыя) - зменныя,
у якія будуць запісаны вынікі разбору.
У радку фармату выкарыстоўваюцца спецыяльныя сімвалы (фарматныя спецыфікатары), якія пачынаюцца са знака %
і кіруюць фарматаваннем вываду.
Сінтаксіс
sscanf(string $str, string $format [, mixed &$... ]): mixed
Фарматныя спецыфікатары
Спецыфікатар | Апісанне |
---|---|
%s |
Радок |
%d |
Цэлы лік са знакам (дзесятковае) |
%u |
Цэлы лік без знака (дзесятковае) |
%f |
Лік з якая плавае коскай (лакаль-залежны) |
%F |
Лік з якая плавае коскай (не лакаль-залежны) |
%c |
Сімвал па ASCII-кодзе |
%x |
Цэлы лік у шаснаццатковай сістэме (ніжні рэгістр) |
%X |
Цэлы лік у шаснаццатковай сістэме (верхні рэгістр) |
%o |
Цэлы лік у васьмерковай сістэме |
%b |
Цэлы лік у двайковай сістэме |
%e |
Навуковая натацыя (ніжні рэгістр) |
%E |
Навуковая натацыя (верхні рэгістр) |
%g |
Кароткі запіс %e або %f |
%G |
Кароткі запіс %E або %F |
%% |
Знак працэнта |
Прыклад
Разбярэм радок, здабываючы лік і тэкст:
<?php
$res = sscanf("42 is the answer", "%d is %s");
print_r($res);
?>
Вынік выканання кода:
[42, 'the']
Прыклад
Разбярэм дату на складнікі:
<?php
$date = "2023-12-31";
list($year, $month, $day) = sscanf($date, "%d-%d-%d");
echo "Year: $year, Month: $month, Day: $day";
?>
Вынік выканання кода:
'Year: 2023, Month: 12, Day: 31'