라이브러리

[PHP] ReflectionClass::inNamespace - 네임스페이스에 있는지 확인합니다.




ReflectionClass::inNamespace

PHP의 ReflectionClass는 클래스의 정보를 반영하는 클래스입니다. ReflectionClass::inNamespace 메소드는 클래스가 특정 네임스페이스에 속하는지 확인하는 메소드입니다.

인자

* `$namespace`: 확인할 네임스페이스

반환값

* `bool`: 클래스가 네임스페이스에 속하는지 여부

예제

#hostingforum.kr
php

// namespace 선언

namespace App;



// 클래스 선언

class User

{

    private $name;



    public function __construct($name)

    {

        $this->name = $name;

    }



    public function getName()

    {

        return $this->name;

    }

}



// ReflectionClass 사용

$reflectionClass = new ReflectionClass('AppUser');



// inNamespace 메소드 사용

if ($reflectionClass->inNamespace('App')) {

    echo "클래스가 App 네임스페이스에 속합니다.
";

} else {

    echo "클래스가 App 네임스페이스에 속하지 않습니다.
";

}



이 예제에서는 `AppUser` 클래스가 `App` 네임스페이스에 속하는지 확인합니다. 결과는 "클래스가 App 네임스페이스에 속합니다."가 출력됩니다.

네임스페이스 확인

네임스페이스를 확인할 때는 `ReflectionClass`를 사용하는 것이 좋습니다. 네임스페이스를 확인하는 방법은 다음과 같습니다.

#hostingforum.kr
php

// namespace 선언

namespace App;



// 클래스 선언

class User

{

    private $name;



    public function __construct($name)

    {

        $this->name = $name;

    }



    public function getName()

    {

        return $this->name;

    }

}



// ReflectionClass 사용

$reflectionClass = new ReflectionClass('AppUser');



// getNameSpaceName 메소드 사용

echo $reflectionClass->getNameSpaceName() . "
";



// inNamespace 메소드 사용

if ($reflectionClass->inNamespace('App')) {

    echo "클래스가 App 네임스페이스에 속합니다.
";

} else {

    echo "클래스가 App 네임스페이스에 속하지 않습니다.
";

}



이 예제에서는 `AppUser` 클래스의 네임스페이스를 확인합니다. 결과는 "App"가 출력됩니다.

네임스페이스 변경

네임스페이스를 변경할 때는 `ReflectionClass`를 사용하는 것이 좋습니다. 네임스페이스를 변경하는 방법은 다음과 같습니다.

#hostingforum.kr
php

// namespace 선언

namespace App;



// 클래스 선언

class User

{

    private $name;



    public function __construct($name)

    {

        $this->name = $name;

    }



    public function getName()

    {

        return $this->name;

    }

}



// ReflectionClass 사용

$reflectionClass = new ReflectionClass('AppUser');



// getNameSpaceName 메소드 사용

echo $reflectionClass->getNameSpaceName() . "
";



// inNamespace 메소드 사용

if ($reflectionClass->inNamespace('App')) {

    echo "클래스가 App 네임스페이스에 속합니다.
";

} else {

    echo "클래스가 App 네임스페이스에 속하지 않습니다.
";

}



// getNameSpaceName 메소드 사용

$reflectionClass->setNamespaceName('NewNamespace');



// getNameSpaceName 메소드 사용

echo $reflectionClass->getNameSpaceName() . "
";



// inNamespace 메소드 사용

if ($reflectionClass->inNamespace('NewNamespace')) {

    echo "클래스가 NewNamespace 네임스페이스에 속합니다.
";

} else {

    echo "클래스가 NewNamespace 네임스페이스에 속하지 않습니다.
";

}



이 예제에서는 `AppUser` 클래스의 네임스페이스를 변경합니다. 결과는 "NewNamespace"가 출력됩니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 289 페이지

검색

게시물 검색