sprintf
フォーマットされた文字列を返します
sprintf()
関数は、フォーマットされた文字列を変数に書き込みます。
arg1 、 arg2 、 ++パラメーターは、メイン文字列のパーセント記号(%)シンボルに挿入されます。この関数は段階的に実行されます。最初の%記号で、2番目の%シンボルにarg1を挿入し、 arg2を挿入します。
注: %シンボルがARGパラメーターよりも多い場合、プレースホルダーを使用する必要があります。プレースホルダーは%シンボルの背後にあり、数字と「\ $」で構成されています。例2を参照してください。
fprintf()
printf()
vfprintf()
vprintf()
vsprintf()
パーセント記号(%)シンボルをパラメーターとして渡された変数に置き換えます。
<?php $ number = 2 ; $ str = "shanghai" ; $ txt = sprintf ( " % s 。 echo $ txt ; ?>
自分で試してみてください
フォーマット値%fを使用します。
<?php $ number = 123 ; $ txt = sprintf ( "%f" 、 $ number ) ; echo $ txt ; ?>
自分で試してみてください
プレースホルダーを使用してください:
<?php $ number = 123 ; $ txt = sprintf ( "小数点以下の2つの場所:%1 \ $。2f <br>少年なし:%1 \ $ u " 、 $ number ) ; echo $ txt ; ?>
自分で試してみてください
すべての可能な形式値のデモンストレーション:
<?php $ num1 = 123456789 ; $ num2 = -123456789 ; $ char = 50 ; // ASCII文字50は2です //コメント:フォーマット値 "%%"はパーセントサインを返します エコーsprintf ( "%% b =%b" 、 $ num1 ) 。 "<br>" ; //バイナリ番号 エコーsprintf ( "%% c =%c" 、 $ char ) 。 "<br>" ; // ASCII文字 エコーsprintf ( "%% d =%d" 、 $ num1 ) 。 "<br>" ; //署名された10進番号 エコーsprintf ( "%% d =%d" 、 $ num2 ) 。 "<br>" ; //署名された10進番号 エコーsprintf ( "%% e =%e" 、 $ num1 ) 。 "<br>" ; //科学表記(小文字) エコーsprintf ( "%% e =%e" 、 $ num1 ) 。 "<br>" ; //科学表記(CAPS) エコーsprintf ( "%% u =%u" 、 $ num1 ) 。 "<br>" ; //符号なし小数点以下(肯定) エコーsprintf ( "%% u =%u" 、 $ num2 ) 。 "<br>" ; //符号なし小数点以下(負) エコーsprintf ( "%% f =%f" 、 $ num1 ) 。 "<br>" ; //フローティングポイント番号(ローカル設定に応じて) エコーsprintf ( "%% f =%f" 、 $ num1 ) 。 "<br>" ; //フローティングポイント番号(ローカル設定に依存しない) エコーsprintf ( "%% g =%g" 、 $ num1 ) 。 "<br>" ; //%Eおよび%fより短い エコーsprintf ( "%% g =%g" 、 $ num1 ) 。 "<br>" ; //%Eおよび%fより短い エコーsprintf ( "%% o =%o" 、 $ num1 ) 。 "<br>" ; // octal番号 エコーsprintf ( "%% s =%s" 、 $ num1 ) 。 "<br>" ; // 弦 Echo Sprintf ( "%% x =%x" 、 $ num1 ) 。 "<br>" ; // 16進数(小文字) Echo Sprintf ( "%% x =%x" 、 $ num1 ) 。 "<br>" ; // 16進数(CAPS) Echo Sprintf ( "%%+d =%+d" 、 $ num1 ) 。 "<br>" ; //シンボル仕様(ポジティブ) Echo Sprintf ( "%%+d =%+d" 、 $ num2 ) 。 "<br>" ; //シンボル仕様(負) ?>
自分で試してみてください
文字列仕様のデモンストレーション:
<?php $ str1 = "hello" ; $ str2 = "hello world!" ; Echo Sprintf ( "[%s]" 、 $ str1 ) 。 "<br>" ; Echo Sprintf ( "[%8S]" 、 $ str1 ) 。 "<br>" ; Echo Sprintf ( "[%-8S]" 、 $ str1 ) 。 "<br>" ; Echo Sprintf ( "[%08S]" 、 $ str1 ) 。 "<br>" ; Echo Sprintf ( "[% '*8S]" 、 $ str1 ) 。 "<br>" ; Echo Sprintf ( "[%8.8s]" 、 $ str2 ) 。 "<br>" ; ?>
自分で試してみてください
sprintf ( format 、 arg1 、 arg2 、 arg ++ ))
パラメーター | 説明する |
---|---|
形式 |
必須。文字列とその中の変数をフォーマットする方法を指定します。 考えられる形式値:
追加のフォーマット値。必然的に%と文字の間に配置されます(たとえば、%.2f):
注:上記の複数のフォーマット値を使用する場合は、上記の順序で使用する必要があります。 |
arg1 | 必須。形式の文字列に最初の%シンボルに挿入されたパラメーターを指定します。 |
arg2 | オプション。形式の文字列に2番目の%シンボルに挿入されたパラメーターを指定します。 |
arg ++ | オプション。形式の文字列に3番目と4番目のシンボルに挿入されたパラメーターを指定します。 |