(凡例:型 => 文字列に変換した値の例)
print_r()
- boolean(true) => 1
- boolean(false) =>
- integer => 123
- double => 0.5
- string => abc
- array => Array ( [0] => 1 [1] => 2 [2] => 3 )
- object => Example Object ( [public_var] => 123 [_private_var:private] => 456 )
- resource => Resource id #3
- null =>
trueが1になる。
falseやnullの場合、何も出力されない。
var_dump()
- boolean(true) => bool(true)
- boolean(false) => bool(false)
- integer => int(123)
- double => float(0.5)
- string => string(3) "abc"
- array => array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3) }
- object => object(Example)#1 (2) { ["public_var"]=> int(123) ["_private_var:private"]=> int(456) }
- resource => resource(3) of type (stream)
- null => NULL
そのまま出力されてしまうので、内容を取得して使いたかったら出力制御関数を組み合わせて使う。
var_export()
- boolean(true) => true
- boolean(false) => false
- integer => 123
- double => 0.5
- string => 'abc'
- array => array ( 0 => 1, 1 => 2, 2 => 3, )
- object => Example::__set_state(array( 'public_var' => 123, '_private_var' => 456, ))
- resource => NULL
- null => NULL
print_r()と違い、booleanやnullの変換もできるし、stringにクォーテーションが付くのがよい。
resourceがなぜかnullになる。
serialize()
- boolean(true) => b:1;
- boolean(false) => b:0;
- integer => i:123;
- double => d:0.5;
- string => s:3:"abc";
- array => a:3:{i:0;i:1;i:1;i:2;i:2;i:3;}
- object => O:7:"Example":2:{s:10:"public_var";i:123;s:21:"�Example�_private_var";i:456;}
- resource => i:0;
- null => N;
strval()
- boolean(true) => 1
- boolean(false) =>
- integer => 123
- double => 0.5
- string => abc
- array => Array
- object => ※FatalErrorが発生する
- resource => Resource id #3
- null =>
暗黙の変換で文字列にした場合はこのパターンになる。
(おまけ)
gettype()
- boolean(true) => boolean
- boolean(false) => boolean
- integer => integer
- double => double
- string => string
- array => array
- object => object
- resource => resource
- null => NULL
0 件のコメント:
コメントを投稿