Funkcja PHP scanf()
Przykład
Przeanalizuj ciąg:
<?php
$str = "age:30 weight:60kg";
sscanf($str,"age:%d weight:%dkg",$age,$weight);
// show types and values
var_dump($age,$weight);
?>
Funkcja sscanf() analizuje dane wejściowe z ciągu znaków zgodnie z określonym formatem. Funkcja sscanf() analizuje ciąg znaków na zmienne w oparciu o ciąg formatu.
Jeśli do tej funkcji zostaną przekazane tylko dwa parametry, dane zostaną zwrócone w postaci tablicy. W przeciwnym razie, jeśli zostaną przekazane parametry opcjonalne, przeanalizowane dane są w nich przechowywane. Jeśli istnieje więcej specyfikatorów niż zmiennych, które mogą je zawierać, wystąpi błąd. Jeśli jednak specyfikatorów jest mniej niż zmiennych, dodatkowe zmienne zawierają NULL.
Powiązane funkcje:
Składnia
sscanf(string,format,arg1,arg2,arg++)
Wartości parametrów
Parameter | Description |
---|---|
string | Required. Specifies the string to read |
format | Required. Specifies the format to use. Possible format values:
Additional format values. These are placed between the % and the letter (example %.2f):
Note: If multiple additional format values are used, they must be in the same order as above. |
arg1 | Optional. The first variable to store data in |
arg2 | Optional. The second variable to store data in |
arg++ | Optional. The third, fourth, and so on, to store data in |
Szczegóły techniczne
Wartość zwrotu: | Jeśli do tej funkcji zostaną przekazane tylko dwa parametry, dane zostaną zwrócone w postaci tablicy. W przeciwnym razie, jeśli zostaną przekazane parametry opcjonalne, przeanalizowane dane są w nich przechowywane. Jeśli istnieje więcej specyfikatorów niż zmiennych, które mogą je zawierać, wystąpi błąd. Jeśli jednak specyfikatorów jest mniej niż zmiennych, dodatkowe zmienne zawierają NULL. |
---|---|
Wersja PHP: | 4.0.1+ |
Więcej przykładów
Przykład
Używając wartości formatu %s, %d i %c:
<?php
$str = "If you divide 4 by 2 you'll get 2";
$format = sscanf($str,"%s %s %s %d %s %d %s %s %c");
print_r($format);
?>
❮ Odniesienie do ciągów PHP