테스트 사이트 - 개발 중인 베타 버전입니다

[클래스] Overloading 오버로딩2

· 11년 전 · 662

class Overload {

public function __call($method, $arg) {

if($method == 'test') {

if (is_object($arg[0])) {

$this->testObject($arg[0]);

} else if (is_array($arg[0])) {

$this->testArray($arg[0]);

} else {

$this->testScalar($arg[0]);

}

}

}

 

function testObject($arg) {

echo $arg->test().'<br />';

}

function testArray($arg) {

echo implode(',',$arg).'<br />';

}

function testScalar($arg) {

echo $arg.'<br />';

}

}

 

$ov = new Overload;

$ov->test(new A());

$ov->test(array(1,2,3));

$ov->test('cat');

 

class A {

function test() {

return 'object';

}

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
11832
11829
11826
11823
11822
11821
11820
11819
20318
11818
11817
11816
11814
11813
11811
11810
11809
11808
11807
11806
11805
11804
11803
11802
11801