[php] 간단 Properties class test 5.0 이상에서 > 팁앤테크

본문 바로가기
사이트 내 전체검색

팁앤테크

[php] 간단 Properties class test 5.0 이상에서

페이지 정보

profile_image
작성자 론이
댓글 0건 조회 80,810회 작성일 11-06-07 05:25

본문

<?
/********************

* Properties class
*
* Date : 2010.
*
* @author
*
* desc :
* map 자료구조 형태의 프로퍼티를 관리하는 class
*
*/


class Properties
{
private $list = null; // 프로퍼티를 담을 배열

/*******************
* 생성자
* arg[0] : 타입 - Properties class type 이어야 한다. */
public function __construct(Properties $defaultProperties=null)
{
if ($defaultProperties)
{
$this->list = $defaultProperties->getList();
}
}


/*******************
* property 값을 리턴한다.
* arg[0] : list의 key */
public function getProperty($key)
{
if (is_array($this->list) && $key)
return $this->list[$key];
else
return "";
}


/*******************
* property 값을 리턴한다.
* arg[0] : list의 key */
public function setProperty($key, $value)
{
$this->list[$key] = $value;
}


/*******************
* property 값을 배열형태로 받는다.
* arg[0] : property 배열 */
public function setList($list)
{
$this->list = $list;
}


/*******************
* property 배열을 리턴한다.
* */
public function getList()
{
return $this->list;
}
}


/*
$p = new Properties();
$p->setProperty('apple', '사과');

$props = new Properties($p);
echo $props->getProperty('apple')."<br/>";
var_dump($props->getList());


result:
>> 사과
>> array(1) { ["apple"]=> string(6) "사과" }
*/


class Item
{
public $name = "";
public $price = 0;
protected $spec = null;

public function __construct($name, $price)
{
$this->name = $name;
$this->price = $price;
}

public function getSpec()
{
return $this->spec;
}

public function setSpec( Properties $props )
{
$this->spec= $props;
//echo get_class($this->props);
}

}



$p = new Properties();
$p->setProperty('width', '400');
$p->setProperty('height', '700');
$p->setProperty('forecolor', 'silver');
$p->setProperty('backcolor', 'black');

$item = new Item('iphone', 300000);
$item->setSpec($p);

echo $item->getSpec()->getProperty('forecolor');
/*
result:
>> silver
*/
?>

댓글목록

등록된 댓글이 없습니다.

Total 829건 1 페이지
  • RSS
팁앤테크 목록
번호 제목 글쓴이 조회 날짜
829 제로 861 06-18
828 제로 3587 03-21
827 제로 3931 02-23
826 제로 30450 11-02
825 제로 33685 07-10
824 제로 43205 04-06
823 제로 31375 02-21
822 제로 36613 12-31
821 제로 30515 12-24
820 제로 30326 12-04
819 제로 32975 10-17
818 제로 31838 10-02
817 제로 56191 08-04
816 제로 30256 08-04
815 제로 40789 08-03
814 제로 41226 07-08
813 제로 70441 07-08
812 제로 85079 07-06
811 제로 31584 06-09
810 제로 37195 06-03
809 제로 35600 04-16
808 제로 36143 03-29
807 제로 30551 03-26
806 제로 37736 03-12
805 제로 32690 03-10

검색

회원로그인

회원가입

사이트 정보

株式会社YHPLUS / 대표 : ZERO
〒140-0011 東京都品川区東大井2-5-9-203
050-5470-4714
오픈카카오톡 (YHPLUS) :
https://open.kakao.com/o/slfDj15d

접속자집계

오늘
22,666
어제
24,211
최대
431,155
전체
7,145,973
Copyright (c) 株式会社YHPLUS. All rights reserved.