PHP学習の出力文字列(echo,print,printf,print_rおよびvar_dump)
3300 ワード
1. echo
echoはPHPのキーワードで、値は返されません.書き方では、カッコを省略できます.次のコードがあります.
2. print
printもPHPのキーワードで、戻り値があり、一般的にtrueを返し、falseを返す場合はないはずです.書き方ではechoと同様に括弧を省略できます.次のコードがあります.
3. printf
printfは、C言語のprintfのように、文字列をフォーマットして出力することができる.フォーマットとC言語の差は多くなく、いずれも%で始まる.その説明子は以下のように定義される.
bパラメータは整数で、そのバイナリを表示する
cパラメータは整数で、対応するASCII文字を表示する
dパラメータは整数で、その十進法を表示する
fパラメータは二重精度で浮動小数点数として表示
eパラメータは二重精度であり,科学カウント型として表示される
gパラメータは二重精度であり、浮動小数点数または科学カウント型として表示される
oパラメータは整数で、その8進法を表示する
sパラメータは文字列で、文字列として表示されます
uパラメータは符号なし整数で、その十進法を表示する
x/Xパラメータは整数で、その16進数(それぞれ大文字と小文字)を表示します.
%出力%説明するのは次のとおりです.
f,eは小数点以下6桁をデフォルトとし,gは6桁(小数点加算)を超えると四捨五入し,四捨五入後の値が1000000未満であれば直接出力し,100000を超えると科学カウント型として表示される.fが1.2 e 23より大きい値で出力された結果は正しくない.
以上、%以外は出力総桁数(小数点、Eともに1桁)を指定し、0またはスペースを補位子として指定したり、補位が左か右かを指定したりすることができます.
f,eは小数点以下の桁数を指定することができる.
例えば%5 dは出力総桁数が5であり、左補スペース未満であることを示す.%05 dは出力総桁数が5で、左補0未満であることを示す.05.1 fは出力総桁数が5で、左補0未満、小数点後1桁を表す.05.1 fは出力総桁数が5で、右補0未満、小数点後1位を示す.
サンプルコード:
4. sprintf
sprintfはフォーマット変換とprintfと同様にprintfが直接出力するのとは異なり、sprintfはフォーマットされた文字列を返す.
5. print_rとvar_dump
print_rとvar_dumpは配列とオブジェクトを出力できますがprint_r対ブール型の出力はあまり明らかではない.var_dump出力は比較的詳細で、一般的にデバッグ時に多く使われます.
次のコードがあります.
結果:
echoはPHPのキーワードで、値は返されません.書き方では、カッコを省略できます.次のコードがあります.
echo 'Test String';
echo('Test String');
2. print
printもPHPのキーワードで、戻り値があり、一般的にtrueを返し、falseを返す場合はないはずです.書き方ではechoと同様に括弧を省略できます.次のコードがあります.
print 'Test String';
print('Test String');
3. printf
printfは、C言語のprintfのように、文字列をフォーマットして出力することができる.フォーマットとC言語の差は多くなく、いずれも%で始まる.その説明子は以下のように定義される.
bパラメータは整数で、そのバイナリを表示する
cパラメータは整数で、対応するASCII文字を表示する
dパラメータは整数で、その十進法を表示する
fパラメータは二重精度で浮動小数点数として表示
eパラメータは二重精度であり,科学カウント型として表示される
gパラメータは二重精度であり、浮動小数点数または科学カウント型として表示される
oパラメータは整数で、その8進法を表示する
sパラメータは文字列で、文字列として表示されます
uパラメータは符号なし整数で、その十進法を表示する
x/Xパラメータは整数で、その16進数(それぞれ大文字と小文字)を表示します.
%出力%説明するのは次のとおりです.
f,eは小数点以下6桁をデフォルトとし,gは6桁(小数点加算)を超えると四捨五入し,四捨五入後の値が1000000未満であれば直接出力し,100000を超えると科学カウント型として表示される.fが1.2 e 23より大きい値で出力された結果は正しくない.
以上、%以外は出力総桁数(小数点、Eともに1桁)を指定し、0またはスペースを補位子として指定したり、補位が左か右かを指定したりすることができます.
f,eは小数点以下の桁数を指定することができる.
例えば%5 dは出力総桁数が5であり、左補スペース未満であることを示す.%05 dは出力総桁数が5で、左補0未満であることを示す.05.1 fは出力総桁数が5で、左補0未満、小数点後1桁を表す.05.1 fは出力総桁数が5で、右補0未満、小数点後1位を示す.
サンプルコード:
printf("%7.2f", 1.2); // " 1.20"
printf("%-07.2f", 1.2); // "1.20000"
4. sprintf
sprintfはフォーマット変換とprintfと同様にprintfが直接出力するのとは異なり、sprintfはフォーマットされた文字列を返す.
5. print_rとvar_dump
print_rとvar_dumpは配列とオブジェクトを出力できますがprint_r対ブール型の出力はあまり明らかではない.var_dump出力は比較的詳細で、一般的にデバッグ時に多く使われます.
次のコードがあります.
$v = new test();
print_r($v);
var_dump($v);
class test {
public $num = 1;
public $str = "222";
public $bln = true;
結果:
test Object
(
[num] => 1
[str] => 222
[bool] => 1
)
object(test)#1 (3) {
["num"]=>
int(1)
["str"]=>
string(3) "222"
["bool"]=>
bool(true)
}