Funktsioon sscanf

Funktsioon sscanf analüüsib stringi, kasutades määratud vormingut, ja tagastab väärtused. Esimesena võtab funktsioon analüüsitava stringi, teisena - vormingu stringi, ja järgnevad parameetrid (mittekohustuslikud) - muutujad, kuhu sõelumise tulemused kirjutatakse.

Vormingu stringis kasutatakse spetsiaalseid sümboleid (vormingu spetsifikaatoreid), mis algavad märgist % ja juhib vorminduse väljundit.

Süntaks

phpsscanf(string $str, string $format [, mixed &$... ]): mixed

Vormingu spetsifikaatorid

Spetsifikaator Kirjeldus
%s String
%d Märgiga täisarv (kümnendsüsteemis)
%u Märgita täisarv (kümnendsüsteemis)
%f Ujukomaarv (locale-sõltuv)
%F Ujukomaarv (mitte locale-sõltuv)
%c Sümbol vastavalt ASCII-koodile
%x Täisarv kuueteistkümnendsüsteemis (väiketähed)
%X Täisarv kuueteistkümnendsüsteemis (suurtähed)
%o Täisarv kaheksandsüsteemis
%b Täisarv kahendsüsteemis
%e Teaduslik notation (väiketähed)
%E Teaduslik notation (suurtähed)
%g Lühivorm %e või %f
%G Lühivorm %E või %F
%% Protsendimärk

Näide

Sõelume stringi, eraldades numbri ja teksti:

php<?php
  $res = sscanf("42 is the answer", "%d is %s");
  print_r($res);
?>

Koodi täitmise tulemus:

php[42, 'the']

Näide

Sõelume kuupäeva komponentideks:

php<?php
  $date = "2023-12-31";
  list($year, $month, $day) = sscanf($date, "%d-%d-%d");
  echo "Year: $year, Month: $month, Day: $day";
?>

Koodi täitmise tulemus:

php'Year: 2023, Month: 12, Day: 31'

Vaata ka

  • funktsiooni printf,
    mis väljastab vormindatud stringi
  • funktsiooni explode,
    mis lõhub stringi eraldaja järgi