라이브러리
[PHP] class_uses - 주어진 클래스에서 사용되는 특성을 반환합니다.
PHP Class_uses
PHP의 `class_uses`는 클래스가 사용하는 인터페이스, 추상 클래스, 또는 다른 클래스를 나타내는 배열을 반환합니다. 이 기능은 PHP 7.2 버전부터 사용할 수 있습니다.
# 예제 1: 기본적인 사용
#hostingforum.kr
php
// 사용할 인터페이스
interface MyInterface {
public function sayHello();
}
// 사용할 추상 클래스
abstract class MyAbstractClass {
public function sayHello() {
echo "Hello";
}
}
// 사용할 클래스
class MyClass {
use MyInterface;
use MyAbstractClass;
public function sayHello() {
parent::sayHello();
echo " World!";
}
}
$obj = new MyClass();
$obj->sayHello(); // Hello World!
print_r(class_uses('MyClass')); // Array ( [MyInterface] => MyInterface [MyAbstractClass] => MyAbstractClass )
# 예제 2: 사용하는 클래스가 여러 개인 경우
#hostingforum.kr
php
// 사용할 인터페이스
interface MyInterface1 {
public function sayHello();
}
// 사용할 인터페이스
interface MyInterface2 {
public function sayGoodbye();
}
// 사용할 추상 클래스
abstract class MyAbstractClass {
public function sayHello() {
echo "Hello";
}
}
// 사용할 클래스
class MyClass {
use MyInterface1;
use MyInterface2;
use MyAbstractClass;
public function sayHello() {
parent::sayHello();
echo " World!";
}
public function sayGoodbye() {
echo "Goodbye";
}
}
$obj = new MyClass();
$obj->sayHello(); // Hello World!
$obj->sayGoodbye(); // Goodbye
print_r(class_uses('MyClass')); // Array ( [MyInterface1] => MyInterface1 [MyInterface2] => MyInterface2 [MyAbstractClass] => MyAbstractClass )
# 예제 3: 사용하는 클래스가 인터페이스와 추상 클래스인 경우
#hostingforum.kr
php
// 사용할 인터페이스
interface MyInterface {
public function sayHello();
}
// 사용할 추상 클래스
abstract class MyAbstractClass {
public function sayHello() {
echo "Hello";
}
}
// 사용할 클래스
class MyClass {
use MyInterface;
use MyAbstractClass;
public function sayHello() {
parent::sayHello();
echo " World!";
}
}
$obj = new MyClass();
$obj->sayHello(); // Hello World!
print_r(class_uses('MyClass')); // Array ( [MyInterface] => MyInterface [MyAbstractClass] => MyAbstractClass )
# 예제 4: 사용하는 클래스가 인터페이스와 클래스인 경우
#hostingforum.kr
php
// 사용할 인터페이스
interface MyInterface {
public function sayHello();
}
// 사용할 클래스
class MyOtherClass {
public function sayHello() {
echo "Hello";
}
}
// 사용할 클래스
class MyClass {
use MyInterface;
use MyOtherClass;
public function sayHello() {
parent::sayHello();
echo " World!";
}
}
$obj = new MyClass();
$obj->sayHello(); // Hello World!
print_r(class_uses('MyClass')); // Array ( [MyInterface] => MyInterface [MyOtherClass] => MyOtherClass )
# 예제 5: 사용하는 클래스가 추상 클래스와 클래스인 경우
#hostingforum.kr
php
// 사용할 추상 클래스
abstract class MyAbstractClass {
public function sayHello() {
echo "Hello";
}
}
// 사용할 클래스
class MyOtherClass {
public function sayHello() {
echo "Hello";
}
}
// 사용할 클래스
class MyClass {
use MyAbstractClass;
use MyOtherClass;
public function sayHello() {
parent::sayHello();
echo " World!";
}
}
$obj = new MyClass();
$obj->sayHello(); // Hello World!
print_r(class_uses('MyClass')); // Array ( [MyAbstractClass] => MyAbstractClass [MyOtherClass] => MyOtherClass )
이러한 예제를 통해 `class_uses` 함수의 사용법을 이해할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.