> 백엔드 개발 > PHP 튜토리얼 > PHP의 정적 메소드

PHP의 정적 메소드

WBOY
풀어 주다: 2024-08-29 13:06:45
원래의
1022명이 탐색했습니다.

PHP에서는 개발자가 필요한 곳 ​​어디에서나 프로그램 내에서 정적 클래스의 속성과 속성을 사용할 수 있도록 정적 메서드를 사용합니다. 정적 메서드를 정의하려면 'static' 키워드가 사용됩니다. 프로그램 내에서 함수와 객체 간에 공통으로 사용해야 하는 속성과 메소드에 사용되는 키워드입니다. 따라서 프로그램에 있는 기능과 공유해야 하는 모든 프로그래밍 논리는 정적 메서드로 작성되어야 합니다.

PHP와 구문에서 정적 메소드는 어떻게 작동하나요?

위 소개에서 우리는 PHP에서 정적 메소드를 사용하는 이유를 배웠지만, PHP 프로그래밍 언어에서는 이를 어떻게 사용하는지 알아야 합니다. 객체가 아닌 클래스의 메서드와 속성에 액세스할 수 있고 이를 달성하려면 static 키워드를 사용할 수 있습니다. 특정 메소드를 static으로 정의하려면 함수 이름 앞에 static 키워드를 사용해야 합니다.

광고 이 카테고리에서 인기 있는 강좌 PHP 개발자 - 전문 분야 | 8개 코스 시리즈 | 3가지 모의고사

무료 소프트웨어 개발 과정 시작

웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등

구문:

public static function static_methodname()
{
//Statements//
}
로그인 후 복사

위 구문에서는 정적 메서드가 초기화되고 정의됩니다. 각 프로그램에 정적 속성을 추가하려면 속성 이름 앞에 정적 키워드를 사용해야 합니다

구문:

private static static_propertyname;
로그인 후 복사

위 구문에서 정적 속성은 개인 키워드/액세스 지정자와 함께 사용되며 클래스 내에서 사용할 수 있습니다. 정적을 사용할 때마다 편의상의 이유로 사용하지 말고 유틸리티용으로 사용해야 합니다.

정적 메서드를 사용하면 명시적인 종속성을 정의할 수 없으며 필요할 때 언제 어디서나 액세스할 수 있는 프로그램에 전역 변수도 포함됩니다. 정적 메서드가 포함된 클래스에 대해 자동화 테스트를 수행하는 것은 어렵습니다. 가장 일반적으로 정적 메서드는 유틸리티 클래스에 사용됩니다. 유틸리티 클래스의 목적은 메인 클래스에 모든 종류의 서비스를 제공하는 것입니다. 모든 유틸리티 메소드는 데이터 암호화 및 복호화, 측정 간 변환 및 기타 작업을 프로그램의 메인 클래스에 대한 다른 서비스에 지나지 않는 다양한 작업을 수행할 수 있습니다.

객체를 생성하지 않고도 사용하기 편리하고 쉽다는 생각 때문에 정적 메서드와 속성을 고려해야 하지만, 정적 메서드에는 단점도 있습니다. 클래스에 대한 자동화 테스트를 수행할 때 어려움을 느낄 것입니다. 정적 메소드를 사용하는 것입니다. 정적 메서드와 속성은 전역적이며 프로그램의 어느 곳에서나 사용할 수 있습니다. 이 접근법은 방법을 사용해야 하지만 가능한 한 피해야 하는 경우에 유용합니다.

클래스 외부에서 정적 메서드를 호출하려면:: 연산자를 사용해야 합니다.

구문:

Class_name::static_method_name();
로그인 후 복사

마찬가지로 클래스 외부의 정적 속성에 액세스하려면:: 연산자를 사용해야 합니다.

구문:

Class_name::static_property_name;
로그인 후 복사

PHP에서 정적 메소드를 구현하는 예

다음은 직원 클래스에 대해 PHP에서 정적 메소드를 구현하는 방법의 예입니다.

코드:

<!DOCTYPE html>
<html>
<body>
<?php
class employee
{
public static function ename()
{
echo " Employee name is Geeta";
}
public function __construct()
{
self::ename();
}
}
employee::ename();
new employee();
?>
</body>
</html>
로그인 후 복사

출력:

PHP의 정적 메소드

위의 예에서 직원 클래스는 메인 클래스이고 이름은 메인 클래스 내부에서 사용해야 하는 정적 클래스입니다. 여기서 정적 메서드가 정의된 클래스 내부에서 호출되어야 하는 경우 self-키워드를 사용하여 정적 메서드를 호출해야 하고, 정적 메서드가 클래스 외부에서 호출되어야 하는 경우 클래스와 함께 호출되어야 합니다. 이름.

PHP 정적 메소드의 장점

정적 방법을 사용하면 몇 가지 장점이 있습니다. 그 내용은 다음과 같습니다.

  • 정적 메서드의 인스턴스에 종속되지 않는 동작에 많은 클래스가 액세스할 수 있습니다.
  • 도우미 클래스에서 상태 비저장 유틸리티 메서드를 함께 그룹화하면 무슨 일이 일어나고 있는지 명확하게 알 수 있고 응집력 있고 일관적인 클래스를 만들 수 있습니다.
  • 정적 메서드는 클래스 이름을 사용하여 사용하거나 액세스할 수 있으며 개체가 필요하지 않습니다.
  • 정적 메서드와 속성에는 프로그램의 모든 인스턴스에 적용되는 단일 값이 있습니다.

PHP 정적 메소드의 단점

  • 정적 멤버는 요구 사항에 대한 적절한 비전이 필요하므로 특별한 의도를 가지고 생성되어야 합니다.
  • 정적 방법은 메서드와 해당 속성이 전역적으로 정의되어 프로그램 내 어디에서나 사용할 수 있으므로 특정 프로그램에 대해 테스트를 수행해야 할 때 어렵습니다. 따라서 메소드나 속성의 값이 기본적으로 설정되어 구현 시 단점이 될 수 있습니다.

PHP의 정적 메소드 정의 규칙 및 규정

  • 정적 메소드를 정의할 때 가장 먼저 중요한 점은 초기화해야 하는 메소드 이름이나 속성 이름 앞에 static 키워드를 포함시키는 것입니다. 메서드나 속성 이름이 정적으로 선언되지 않으면 다른 메서드가 함수/메서드의 범위에 전역적으로 액세스할 수 없습니다.
  • 두 번째 포인트는 클래스 외부에서 정적 메서드와 속성을 호출해야 하는 경우 범위 확인 연산자(::)를 사용하는 것입니다. 범위 결정 연산자를 사용하면 정적 메서드 또는 속성 이름과 함께 클래스 이름을 언급해야 합니다.

결론

이 기사에서는 정적 메소드를 선언하는 방법과 사용법을 이해했습니다. 또한 범위 확인 연산자를 사용하여 클래스 외부에서 정적 메서드 및 속성을 호출하는 방법과 함께 작동 방식과 다양한 장단점을 이해했습니다. 개발자는 요구사항의 사실을 이해해야 하며 프로그램의 테스트 부분에 영향을 미치기 때문에 정적 방법을 사용해야 합니다.

추천기사

PHP의 Static Method에 대한 안내입니다. 여기에서는 규칙 및 규정과 함께 PHP에서 정적 메소드가 작동하는 방식, 예제, 장점, 단점에 대해 논의합니다. 더 자세히 알아보려면 다른 추천 기사를 살펴보세요. –

  1. PHP의 추상 클래스
  2. PHP의 소켓 프로그래밍
  3. PHP 프레임워크
  4. PHP의 공개 함수

위 내용은 PHP의 정적 메소드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:php
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿