라이브러리
[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"가 출력됩니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.