「PHPでオブジェクト指向入門8~クラス定数~」の編集履歴(バックアップ)一覧はこちら
追加された行は緑色になります。
削除された行は赤色になります。
前回記事、[[PHPでオブジェクト指向入門7~静的プロパティ~]]と違う方法で定数を表現していきたいと思います。10月13日記事
~
~
目次
#contents
~
~
----
~
*手続き型での表現
<?php
const LOG3 = 0.4771;
$three_digit = 100;
$ten_digit = ceil($three_digit * LOG3);
print 'log3は'.LOG3.'<br>';
print '3進数の'.$three_digit.'桁は、10進数では約'.$ten_digit.'桁です。';
?>
これをオブジェクト指向で表現していきます。
~
~
*オブジェクト指向の表現
Class(Static_const.php)constは予約語なのでStatic_という名前を付けました。
<?php
class Static_const{
const LOG3 = 0.4771;//一応、大文字で記述。
public static function LOG3($num){
return ceil($num * self::LOG3);
}
}
呼び出す方
<?php
require_once ('../class/Static_const.php');
//3進数の桁数
$num = 100;
echo 'log3は'.Static_const::LOG3.'<br>';
echo '3進数の'.$num.'桁は、10進数では約'.Static_const::LOG3($num).'桁です。';
?>
実行結果
log3は0.4771
3進数の100桁は、10進数では約48桁です。
~
~
*まとめ
静的プロパティでもクラス定数でも表現は似ているのでどちらか選びお好きなようにどうぞ。~
ここまででオブジェクト指向入門1~8までで、インスタンス化の仕方やメソッド、メンバ変数と静的なものを呼び出す方法ついて学んでいきました。
第一段階はここまでです。第二段階としてカプセル化というものを学んでいきたいと思います。
~
~
以上