وظيفة sscanf() في PHP
مثال
فكك النص:
<?php $str = "age:30 weight:60kg"; sscanf($str,"age:%d weight:%dkg",$age,$weight); // عرض النوع والقيمة var_dump($age,$weight); ؟
التعريف والاستخدام
تقوم وظيفة sscanf() بفكك النص من النص المحدد. تقوم وظيفة sscanf() بفكك النص بناءً على سلسلة النحو.
إذا تم إرسال إثنين فقط من المعلمات إلى هذه الوظيفة، فإن البيانات ستتمكن في شكل مصفوفة. وإذا تم إرسال معلمات إضافية، فإن البيانات المفككة ستتمكن في هذه المعلمات. وإذا كان عدد المعلمات أكبر من عدد المعلمات التي تحتويها، فإن هناك خطأ. ولكن إذا كان عدد المعلمات أقل من عدد المعلمات التي تحتويها، فإن المعلمات الإضافية تحتوي على NULL.
الوظائف ذات الصلة:
النحو
sscanf(نص,تنسيق,arg1,arg2,arg++)
الم 参数 | الوصف |
---|---|
نص | مطلوب. يحدد النص الذي سيتم قراءته. |
تنسيق |
مطلوب. يحدد التنسيق الذي سيتم استخدامه. قيم التنسيق الممكنة:
附加的格式值。必需放置在 % 和字母之间(例如 %.2f):
注释:如果使用多个上述的格式值,它们必须按照上面的顺序使用。 |
arg1 | 可选。存储数据的第一个变量。 |
arg2 | 可选。存储数据的第二个变量。 |
arg++ | 可选。存储数据的第三、四个变量,依此类推。 |
技术细节
返回值: | 如果只向该函数传递两个参数,数据将以数组的形式返回。否则,如果传递了额外的参数,那么被解析的数据会存储在这些参数中。如果区分符的数目大于包含它们的变量的数目,则会发生错误。不过,如果区分符的数目小于包含它们的变量的数目,则额外的变量包含 NULL。 |
PHP 版本: | 4.0.1+ |
更多实例
例子 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); ؟