PHP - функция sscanf()
Пример
Разобрать строку:
<?php
$str = "age:30 weight:60kg";
sscanf($str,"age:%d weight:%dkg",$age,$weight);
// show types and values
var_dump($age,$weight);
?>
Функция sscanf() анализирует ввод из строки в соответствии с указанным форматом. Функция sscanf() разбирает строку на переменные на основе строки формата.
Если этой функции переданы только два параметра, данные будут возвращены в виде массива. В противном случае, если передаются необязательные параметры, в них сохраняются разобранные данные. Если спецификаторов больше, чем переменных, которые их содержат, возникает ошибка. Однако, если спецификаторов меньше, чем переменных, дополнительные переменные содержат NULL.
Связанные функции:
- printf() - выводит форматированную строку
- sprintf() - записывает форматированную строку в переменную
Синтаксис
sscanf(string,format,arg1,arg2,arg++)
Значения параметров
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 |
Технические детали
Возвращаемое значение: | Если этой функции переданы только два параметра, данные будут возвращены в виде массива. В противном случае, если передаются необязательные параметры, в них сохраняются разобранные данные. Если спецификаторов больше, чем переменных, которые их содержат, возникает ошибка. Однако, если спецификаторов меньше, чем переменных, дополнительные переменные содержат NULL. |
---|---|
Версия PHP: | 4.0.1+ |
Дополнительные примеры
Пример
Используя значения формата %s, %d и %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);
?>
❮ Справочник по строкам PHP