Forum und email

sscanf

(PHP 4 >= 4.0.1, PHP 5)

sscanf — Κάνει parse μία είσοδο από ένα string σύμφωνα με το format

Περιγραφή

mixed sscanf ( string $str , string $format [, string $var1 ] )

Η συνάρτηση sscanf() είναι ανάλογη της printf(), αλλά για είσοδο. Η sscanf() κάνει ανάγνωση από το string str και το μεταφράζει σύμφωνα με το καθορισμένο format . Εάν περαστούν μόνο δύο παράμετροι στη συνάρτηση, τότε οι τιμές που γίνονται parsed επιστρέφονται ως ένας πίνακας.

Οποιοδήποτε κενό στο format string ταιριάζει με το κάθε κενό στο string εισόδου. Αυτό σημαίνει ότι ακόμα και ένα tab \t του format string μπορεί να ταιριάξει με ένα χαρακτήρα κενού στο string εισόδου.

Example#1 Παράδειγμα χρήσης της sscanf()

<?php
// getting the serial number
$serial sscanf("SN/2350001","SN/%d");
// and the date of manufacturing
$mandate "January 01 2000";
list(
$month$day$year) = sscanf($mandate,"%s %d %d");
echo 
"Item $serial was manufactured on: $year-".substr($month,0,3)."-$day\n";
?>
Εάν περαστούν οι προαιρετικοί παράμετροι, η συνάρτηση θα επιστρέψει το πλήθος των καθορισμένων τιμών. Οι προαιρετικοί παράμετροι πρέπει να περαστούν κατ' αναφορά.

Example#2 Χρήση προαιρετικών παραμέτρων της sscanf()

<?php
// get author info and generate DocBook entry
$auth "24\tLewis Carroll";
$n sscanf($auth,"%d\t%s %s", &$id, &$first, &$last);
echo 
"<author xml:id='$id'>
    <firstname>$first</firstname>
    <surname>$last</surname>
</author>\n"
;
?>

Ανατρέξτε επίσης στις: fscanf(), printf(), και sprintf().