<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >sscanf</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK REL="HOME" TITLE="PHP 手册" HREF="index.html"><LINK REL="UP" TITLE="String 字符串处理函数" HREF="ref.strings.html"><LINK REL="PREVIOUS" TITLE="sprintf" HREF="function.sprintf.html"><LINK REL="NEXT" TITLE="str_getcsv" HREF="function.str-getcsv.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=UTF-8"></HEAD ><BODY CLASS="refentry" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >PHP 手册</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="function.sprintf.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="function.str-getcsv.html" ACCESSKEY="N" >下一页</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="function.sscanf" ></A >sscanf</H1 ><DIV CLASS="refnamediv" ><A NAME="AEN226954" ></A ><P > (PHP 4 >= 4.0.1, PHP 5)</P >sscanf -- Parses input from a string according to a format </DIV ><DIV CLASS="refsect1" ><A NAME="AEN226957" ></A ><H2 >Description</H2 >mixed <B CLASS="methodname" >sscanf</B > ( string str, string format [, mixed &...] )<BR ></BR ><P > The function <B CLASS="function" >sscanf()</B > is the input analog of <A HREF="function.printf.html" ><B CLASS="function" >printf()</B ></A >. <B CLASS="function" >sscanf()</B > reads from the string <CODE CLASS="parameter" >str</CODE > and interprets it according to the specified <CODE CLASS="parameter" >format</CODE >, which is described in the documentation for <A HREF="function.sprintf.html" ><B CLASS="function" >sprintf()</B ></A >. If only two parameters were passed to this function, the values parsed will be returned as an array. Otherwise, if optional parameters are passed, the function will return the number of assigned values. The optional parameters must be passed by reference. </P ><P > Any whitespace in the format string matches any whitespace in the input string. This means that even a tab \t in the format string can match a single space character in the input string. </P ><P > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN226980" ></A ><P ><B >例 1. <B CLASS="function" >sscanf()</B > Example</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> <font color="#0000BB"><?php<br /></font><font color="#FF8000">// getting the serial number<br /></font><font color="#007700">list(</font><font color="#0000BB">$serial</font><font color="#007700">) = </font><font color="#0000BB">sscanf</font><font color="#007700">(</font><font color="#DD0000">"SN/2350001"</font><font color="#007700">, </font><font color="#DD0000">"SN/%d"</font><font color="#007700">);<br /></font><font color="#FF8000">// and the date of manufacturing<br /></font><font color="#0000BB">$mandate </font><font color="#007700">= </font><font color="#DD0000">"January 01 2000"</font><font color="#007700">;<br />list(</font><font color="#0000BB">$month</font><font color="#007700">, </font><font color="#0000BB">$day</font><font color="#007700">, </font><font color="#0000BB">$year</font><font color="#007700">) = </font><font color="#0000BB">sscanf</font><font color="#007700">(</font><font color="#0000BB">$mandate</font><font color="#007700">, </font><font color="#DD0000">"%s %d %d"</font><font color="#007700">);<br />echo </font><font color="#DD0000">"Item $serial was manufactured on: $year-" </font><font color="#007700">. </font><font color="#0000BB">substr</font><font color="#007700">(</font><font color="#0000BB">$month</font><font color="#007700">, </font><font color="#0000BB">0</font><font color="#007700">, </font><font color="#0000BB">3</font><font color="#007700">) . </font><font color="#DD0000">"-$day</font><font color="#007700">\n</font><font color="#DD0000">"</font><font color="#007700">;<br /></font><font color="#0000BB">?></font> </font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > If optional parameters are passed, the function will return the number of assigned values. <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN226984" ></A ><P ><B >例 2. <B CLASS="function" >sscanf()</B > - using optional parameters</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> <font color="#0000BB"><?php<br /></font><font color="#FF8000">// get author info and generate DocBook entry<br /></font><font color="#0000BB">$auth </font><font color="#007700">= </font><font color="#DD0000">"24\tLewis Carroll"</font><font color="#007700">;<br /></font><font color="#0000BB">$n </font><font color="#007700">= </font><font color="#0000BB">sscanf</font><font color="#007700">(</font><font color="#0000BB">$auth</font><font color="#007700">, </font><font color="#DD0000">"%d\t%s %s"</font><font color="#007700">, </font><font color="#0000BB">$id</font><font color="#007700">, </font><font color="#0000BB">$first</font><font color="#007700">, </font><font color="#0000BB">$last</font><font color="#007700">);<br />echo </font><font color="#DD0000">"<author id='$id'><br /> <firstname>$first</firstname><br /> <surname>$last</surname><br /></author></font><font color="#007700">\n</font><font color="#DD0000">"</font><font color="#007700">;<br /></font><font color="#0000BB">?></font> </font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ><P > See also <A HREF="function.fscanf.html" ><B CLASS="function" >fscanf()</B ></A >, <A HREF="function.printf.html" ><B CLASS="function" >printf()</B ></A >, and <A HREF="function.sprintf.html" ><B CLASS="function" >sprintf()</B ></A >. </P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="function.sprintf.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >起始页</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="function.str-getcsv.html" ACCESSKEY="N" >下一页</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >sprintf</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="ref.strings.html" ACCESSKEY="U" >上一级</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >str_getcsv</TD ></TR ></TABLE ></DIV ></BODY ></HTML >