Руководство по языку программирования PHP
 

PCRE
 

Строковые функции PHP

sscanf()

Синтаксис:

sscanf (input_string, format_string[, arg1, arg++.... ])


Поддерживается следующими версиями PHP:

3
4.0.1
5
-
+
+

Описание функции:

Функции sscanf() выбирает данные из строки в соответствии с заданным форматом.

Аргумент
Описание
Тип
input_string

Обязательный аргумент. Строка с данными.

string
format_string

Обязательный аргумент. Строка форматирования .

Возможные значения форматирования:

%% - Знак %
%D - трактуется как целое и выводится в виде двоичного числа
%c - трактуется как целое и выводится в виде символа с соответствующим кодом ASCII
%d - трактуется как целое и выводится в виде десятичного числа со знаком.
%e - трактуется как float и выводится в научной нотации (например 2.4e+3).
%E - аналогично %e, только выводит большую букву E (например 2.4E+3).
%u - трактуется как целое и выводится в виде десятичного числа без знака.
%f - трактуется как float и выводится в виде десятичного числа с плавающей точкой. (локальные настройки).
%o - трактуется как целое и выводится в виде восьмеричного числа.
%s - трактуется как строка.
%x - трактуется как целое и выводится в виде шестнадцатеричного числа (в нижнем регистре букв).
%X - трактуется как целое и выводится в виде шестнадцатеричного числа (в верхнем регистре букв).

В отличии от функции printf(), функция sscanf() не поддерживает следующие значения форматирования: %F, %g, %G, %b.

Дополнительные значения форматирования:

  • + (ставит знак "+" или "-" перед числами, по умолчанию ставится только перед отрицательными числами)
  • * ( символ используемый для заполнения результата до нужной длины.)
  • - (выравниватель влево, по умолчанию вправо)
  • [0-9] (минимальное число символов)
  • .[0-9] (описатель точности для чисел с плавающей точкой)

Дополнительные значения форматирования используются в выше перечисленном порядке.

string
arg1, arg++

Необязательный аргумент. Имена переменных в которые будут вставлены соответствующие совпадения шаблона со строкой. Передаются по ссылке.

Если arg1, arg++ не заданы, то возвращается массив со всеми совпадениями.

mixed

 


Примеры:

Пример 1:


$input_string = "Возраст: 30 лет, рост:178 см";
sscanf($input_string,"Возраст: %d лет, рост:%d см",$age, $height);
var_dump($age, $height);

?>

Результат:

int(30) int(178)

Пример 2:

Тот же пример, но с выводом данных в массив


$input_string = "Возраст: 30 лет, рост:178 см";
$mas = sscanf($input_string,"Возраст: %d лет, рост:%d см");
print_r($mas);
?>

Результат:

Array ( [0] => 30 [1] => 178 )

Статьи по теме "Секреты вебмастера"

 

Строковые функции

addcslashes()
addslashes()
bin2hex()
chop()
chr()
chunk_split()
convert_cyr_string()
convert_uudecode()
convert_uuencode()
count_chars()
crc32()
crypt()
echo()
explode()
fprintf()
get_html_translation_table()
html_entity_decode()
htmlentities()
htmlspecialchars_decode()
htmlspecialchars()
implode()
join()
localeconv()
ltrim()
md5
md5_file()
metaphone()
nl2br()
number_format()
ord()
parse_str()
print()
printf()
quotemeta()
rtrim()
sha1_file()
sha1()
similar_text()
soundex()
sprintf()
sscanf()
str_ireplace()
str_repeat()
str_replace()
str_rot13()
str_shuffle()
str_split()
str_word_count()
strcasecmp()
strchr()
strcmp()
strcoll()
strcspn()
strip_tags()
stripcslashes()
stripos()
stripslashes()
strlen()
strnatcasecmp()
strnatcmp()
strncasecmp()
strncmp()
strpbrk()
strpos()
strrchr()
strrev()
strripos()
strrpos()
strspn()
stristr()
strtok()
strtolower()
strtoupper()
strstr()
substr_compare()
substr_count()
substr_replace()
substr()
trim()
ucfirst()
ucwords()
vfprintf()
vprintf()
vsprintf()
wordwrap()

Надёжный хостинг BeGet.ru