PHPの勉強3 型、演算子

最終更新:2006/06/16

トップページへ戻る
前へ 次へ
ページ目次
  1. 演算子


1. 型

    PHPの主なデータ型は以下の通りです。
型名 説明
論理型 boolean 真か偽を表します。値はTRUEかFALSEの2種類だけです。
整数 integer 整数の値を表します。
浮動小数点数 float 小数の値を表します。
文字列 string 文字を扱います。
<html>
<head>
<title>SAMPLE003</title>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">
</head>
<body>
<?php
    // boolean
    $b1 = TRUE;
    $b2 = FALSE;

    // integer
    $i1 = 1234;  // 10進数
    $i2 = -123;  // 負の数
    $i3 = 0123;  // 8進数
    $i4 = 0x1A;  // 16進数

    // float
    $f1 = 1.234;
    $f2 = 1.2e3;
    $f3 = 7E-10;

    // string
    $s1 = "PHP Programer.";
    $s2 = 'Java Programer.';

    var_dump($b1);
    print "<br>";
    print "$b1 : " . $b1 . "<br>";

    var_dump($b2);
    print "<br>";
    print "$b2 : " . $b2 . "<br>";

    var_dump($i1);
    print "<br>";
    print "$i1 : " . $i1 . "<br>";

    var_dump($i2);
    print "<br>";
    print "$i2 : " . $i2 . "<br>";

    var_dump($i3);
    print "<br>";
    print "$i3 : " . $i3 . "<br>";

    var_dump($i4);
    print "<br>";
    print "$i4 : " . $i4 . "<br>";

    var_dump($f1);
    print "<br>";
    print "$f1 : " . $f1 . "<br>";

    var_dump($f2);
    print "<br>";
    print "$f2 : " . $f2 . "<br>";

    var_dump($f3);
    print "<br>";
    print "$f3 : " . $f3 . "<br>";

    var_dump($s1);
    print "<br>";
    print "$s1 : " . $s1 . "<br>";

    var_dump($s2);
    print "<br>";
    print "$s2 : " . $s2 . "<br>";
?>
</body>
</html>
       sample003の実行結果


2. 演算子

    PHPで利用できる代表的な演算子を説明します。

    1. 代数演算子

       算術計算を行う場合に使用します。
記述 内容
$a + $b $a と $b を足す
$a - $b $a から $b を引く
$a * $b $a と $b を掛ける
$a / $b $a を $b で割る
$a % $b $a を $b で割った余り
<html>
<head>
<title>SAMPLE004</title>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">
</head>
<body>
<?php
    print "5 + 2 = " . (5 + 2) . "<br>";
    print "5 - 2 = " . (5 - 2) . "<br>";
    print "5 * 2 = " . (5 * 2) . "<br>";
    print "5 / 2 = " . (5 / 2) . "<br>";
    print "5 % 2 = " . (5 % 2) . "<br>";
?>
</body>
</html>
       sample004の実行結果
    2. 代入演算子

       変数に値を代入する時に使用します。
記述 内容
$a = $b $a に $b を代入する
$a += $b $a に $a + $b を代入する
$a -= $b $a に $a - $b を代入する
$a *= $b $a に $a * $b を代入する
$a /= $b $a に $a / $b を代入する
$a %= $b $a に $a % $b を代入する
$a .= $b $a に $b の値を連結して代入する
<html>
<head>
<title>SAMPLE005</title>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">
</head>
<body>
<?php
    print '$a = 5  : ' . ($a = 5) . '<br>';
    print '$a += 2 : ' . ($a += 2) . '<br>';
    print '$a -= 2 : ' . ($a -= 2) . '<br>';
    print '$a *= 2 : ' . ($a *= 2) . '<br>';
    print '$a /= 2 : ' . ($a /= 2) . '<br>';
    print '$a %= 2 : ' . ($a %= 2) . '<br>';
    print '$a .= 2 : ' . ($a .= 2) . '<br>';
?>
</body>
</html>
       sample005の実行結果
    3. 関係演算子

       値の比較を行うための演算子です。TRUE(真)またはFALSE(偽)を返します。
記述 内容
$a == $b $a と $b が等しい時にTRUE
$a === $b $a と $b が等しく同じ型である場合にTRUE
$a != $b $a と $b が等しくない場合にTRUE
$a <> $b $a と $b が等しくない場合にTRUE
$a !== $b $a と $b が等しくないか、同じ型でない場合にTRUE
$a < $b $a が $b より小さい時にTRUE
$a > $b $a が $b より大きい時にTRUE
$a <= $b $a が $b より小さいか等しい時にTRUE
$a >= $b $a が $b より大きいか等しい時にTRUE
<html>
<head>
<title>SAMPLE006</title>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">
</head>
<body>
<?php
    print '5 == 5       : ' . (5 == 5) . '<br>';
    print '5 === 5      : ' . (5 === 5) . '<br>';
    print '5 != 5       : ' . (5 != 5) . '<br>';
    print '5 <> 5       : ' . (5 <> 5) . '<br>';
    print '5 !== 5      : ' . (5 !== 5) . '<br>';
    print '5 < 5        : ' . (5 < 5) . '<br>';
    print '5 > 5        : ' . (5 > 5) . '<br>';
    print '5 <= 5       : ' . (5 <= 5) . '<br>';
    print '5 >= 5       : ' . (5 >= 5) . '<br>';
?>
</body>
</html>
       sample006の実行結果
    4. インクリメント/デクリメント演算子

       変数の値を1つずつ増減させる時に使用する演算子です。
記述 内容
$a++ $a の値を返してから $a の値に 1 を加える。
++$a $a の値に 1 を加えてから $a の値を返す。
$a-- $a の値を返してから $a の値から 1 を引く。
--$a $a の値から 1 を引いてから $a の値を返す。
<html>
<head>
<title>SAMPLE007</title>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">
</head>
<body>
<?php
    $a = 5;
    // 変数の値を表示してから1増やす
    print "a : " . $a++ . "<br>";
    // 変数を1増やしてから値を表示する
    print "a : " . ++$a . "<br>";
    // 変数の値を表示してから1減らす
    print "a : " . $a-- . "<br>";
    // 変数を1減らしてから値を表示する
    print "a : " . --$a . "<br>";
?>
</body>
</html>
       sample007の実行結果
    5. ビット演算子
内容
$a & $b $aと$bの論理積(AND)
a | b $aと$bの論理和(OR)
$a ^ $b 排他的論理和(XOR: exclusive OR)
~$a $aの否定(NOT)
a << n aを0埋めしながらnビット左にシフトさせる
a >> n aを符号を保持したままnビット右にシフトさせる
<html>
<head>
<title>SAMPLE008</title>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">
</head>
<body>
<?php
        $a = 1;
        $b = 0;

        // AND
        print '$a & $b  : ' . ($a & $b) . '<br>';
        // OR
        print '$a | $b  : ' . ($a | $b) . '<br>';
        // XOR
        print '$a ^ $b  : ' . ($a ^ $b) . '<br>';
        // NOT
        print '~$a      : ' . (~$a) . '<br>';
        // 左シフト
        print '$a << $b : ' . ($a << $b) .'<br>';
        // 右シフト
        print '$a >> $b : ' . ($a >> $b) .'<br>';
?>
</body>
</html>
       sample008の実行結果
    6. 論理演算子
内容
$a && $b $aと$bの論理積
$a and $b $aと$bの論理積
$a || $b $aと$bの論理和
$a or $b $aと$bの論理和
$a xor $b 排他的論理和(XOR: exclusive OR)
! $a $aの否定(NOT)
<html>
<head>
<title>SAMPLE009</title>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">
</head>
<body>
<?php
        $a = 1;
        $b = 0;

        // 論理積
        print '$a && $b  : ' . ($a && $b) . '<br>';
        // 論理和
        print '$a || $b  : ' . ($a || $b) . '<br>';
        // 排他的論理和
        print '$a xor $b : ' . ($a xor $b) . '<br>';
        // 否定
        print '!$a       : ' . (!$a) . '<br>';
?>
</body>
</html>
       sample009の実行結果
トップページへ戻る
前へ 次へ
Copyright© 2005- Naoyuki Sano. All rights reserved.