Hatena::ブログ(Diary)

crazyuplog このページをアンテナに追加 RSSフィード

2009-06-03

PHP vol.32

__construct

newした瞬間に呼ばれる関数

<?php
class Employee {
  public function __construct($id, $sei, $mei) {
    $this->setId($id);
    $this->setSei($sei);
    $this->setMei($mei);
  }
  public function getName() {
    return $this->sei." ".$this->mei;
  }
}
?>
  • 表示部
<?php
require_once ('Employee.class.php');
$employee = new Employee("1", "えのもと", "しょうた");
echo $employee->getName()."は社員番号が".$employee->getId()."です。";
?>
表示結果
えのもと しょうたは社員番号が1です。

初期値を定義できる

class Company {
protected $money = 200000;
//(省略)
}
  • セットすればその値になる。

class継承

サブクラススーパークラス変数・メソッドを引き継ぐことができる。

class DinoEmployee extends Employee {
}
//DinoEmployee.class.php
class DinoEmployee extends Employee
{
      public $hoge = 'hogehoge';
}
//Employee.class.php
class Employee
{
      public $hoge = 'fugafuga';
}
//表示 ($hogeをechoしたとして)
hogehoge

課題

カンパニークラスで株式会社有限会社継承してみよう。

株式会社有限会社資本金が異なる。

hoge社員とfuga社員を株式会社有限会社それぞれに所属させる。

人数等は以下の表で記す。

資本金hoge社員数fuga社員数
株式会社1000万円21
有限会社300万円12

給料をはらうメソッドを実装し、給料を払ったとき、資本金を下回ったら終わりとする。

実行結果とソースコード
Copyright © crazyup. All rights reserved.