>  기사  >  백엔드 개발  >  PHP 클래스 상수란 무엇입니까? 클래스 상수 사용법에 대한 자세한 설명

PHP 클래스 상수란 무엇입니까? 클래스 상수 사용법에 대한 자세한 설명

伊谢尔伦
伊谢尔伦원래의
2017-06-29 09:10:113875검색

이 글은 주로 PHP 클래스의 사용법을 소개합니다상수. PHP에서 클래스 상수의 개념, 특성 및 관련 사용법을 분석한 예제입니다. 도움이 필요한 친구들이 참고할 수 있습니다.

이 글의 예제는 PHP의 사용법을 설명합니다. 클래스 상수. 참고할 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.

클래스 상수는 object인스턴스가 아닌 클래스 자체에 속하며 객체 인스턴스를 통해 액세스할 수 없습니다.

하위 클래스는 상위 클래스의 상수를 재정의할 수 있으며 상위 클래스의 상수를 호출할 수 있습니다. (부모::) 상수를 통한 클래스

PHP5.3.0부터는 변수를 사용하여 클래스를 동적으로 호출할 수 있습니다. 하지만 이 변수의 값은 키워드(예: self, parent 또는 static)일 수 없습니다.

상수 값은 scalars, string, bool, integer, float, null만 가능합니다. nowdoc 구조를 사용하여 상수를 초기화할 수 있습니다

<?php
/**
 * PHP类常量
 *
 * 类常量属于类自身,不属于对象实例,不能通过对象实例访问
 * 不能用public,protected,private,static修饰
 * 子类可以重写父类中的常量,可以通过(parent::)来调用父类中的常量
 * 自PHP5.3.0起,可以用一个变量来动态调用类。但该变量的值不能为关键字(如self,parent或static)。
 */
class Foo
{
  // 常量值只能是标量,string,bool,integer,float,null,可以用nowdoc结构来初始化常量
  const BAR = &#39;bar&#39;;
  public static function getConstantValue()
  {
    // 在类的内部可以用self或类名来访问自身的常量,外部需要用类名
    return self::BAR;
  }
  public function getConstant()
  {
    return self::BAR;
  }
}
$foo = &#39;Foo&#39;;
echo $foo::BAR, &#39;<br />&#39;;
echo Foo::BAR, &#39;<br />&#39;;
$obj = new Foo();
echo $obj->getConstant(), &#39;<br />&#39;;
echo $obj->getConstantValue(), &#39;<br />&#39;;
echo Foo::getConstantValue();
// 以上均输出bar
class Bar extends Foo
{
  const BAR = &#39;foo&#39;; // 重写父类常量
  public static function getMyConstant()
  {
    return self::BAR;
  }
  public static function getParentConstant()
  {
    return parent::BAR;
  }
}
echo Bar::getMyConstant(); // foo
echo Bar::getParentConstant(); // bar

위 내용은 PHP 클래스 상수란 무엇입니까? 클래스 상수 사용법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.