2011-02-22 5 views
-2

PHP에서 코드를 작성하고 있는데 변수가 문자열이거나 특정 클래스의 인스턴스 (파생 된 경우)가 아닌 경우 약간 다른 작업을하고 싶습니다. 캐스팅 만 온라인에 대한 참조가 동적 캐스팅이 아닌 명시 적 정적 캐스팅을 수행한다는 것을 알 수있었습니다. 런타임에 주어진 변수의 유형을 확인하고 비교할 수 있습니까?PHP의 동적 유형 검사

+0

문자열과 객체를 모두 포함 할 수있는 변수가 실제로 있습니까? –

+0

'is _()'함수와 같은 의미입니까? 아니면 뭔가 다른 것을 의미합니까? –

+0

PDO와 같은 일부 라이브러리는 'stdClass' 유형의 객체를 인스턴스화하기 때문에주의하십시오. 덕 타이핑이 더 좋을 수도 있습니다. – ide

답변

2

http://php.net/manual/en/function.gettype.php 당신이 찾고있는 것입니다. 변수가 주어진 인스턴스인지 확인하는 경우 - http://php.net/manual/en/function.is-a.php

+0

감사합니다 - 바로 링크가 내가 찾고있는 것이 었습니다. – Puppy

+0

매뉴얼 페이지에서 경고문을 읽으십시오. 'is _ *()'함수를 사용하십시오. 추가로'is_a()'- 함수 http://php.net/language.operators.type 대신에'instanceof' 언어 구조를 사용해야합니다. – KingCrunch

2

PHP documentation*이 유형 인 is_*() 함수를 사용할 것을 권장합니다. 검사 할 유형을 알고있는 한 원하는 효과를 얻을 수 있어야합니다.

물론 당신이하려는 일에 대해 더 자세히 설명해 주면 구체적인 예를 들어 볼 수 있습니다.