1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
/* ----------------------------------------------------------------------------
 *    変数と型の相互変換:キャストの例
 *  変数定義時に明示的な型定義をする必要でなく、
 *  その変数が使用される文により型が定義されます。
 *
 *  作成: 2015.08.03 yoshi of CXMedia Inc.
 * --------------------------------------------------------------------------- */
header("Content-type:text/plain; charset=UTF-8");

$var "0";  // 文字列:ダブルクォテーションで括っているため
echo $var,'→type=',gettype($var),"\n";

$var += 2;   // 整数:加算しているため
echo $var,'→type=',gettype($var),"\n";

$var $foo 1.3;  // 浮動小数点:小数点の加算のため
echo $var,'→type=',gettype($var),"\n";

$var "10 Little Piggies"// 整数:加算して文字列は無視されるため
echo $var,'→type=',gettype($var),"\n";

// 型キャストは、変換しようとする型を括弧で括り、キャストする変数の前に置きます。
$var 10;
$bar = (boolean) $var;   // 論理値:(boolean)のキャスト変換
echo $bar,'→type=',gettype($bar),"\n";

// リテラル文字列や変数を、バイナリ文字列にキャスト
$string 'binary test';
$bar = (binary) $string;
echo 
$bar,'→type=',gettype($bar),"\n";

$bar b"binary string";
echo 
$bar,'→type=',gettype($bar),"\n";
?>