>  기사  >  백엔드 개발  >  PHP: 구축 방법에 대한 자세한 설명

PHP: 구축 방법에 대한 자세한 설명

黄舟
黄舟원래의
2017-07-02 09:39:372613검색

1. 생성자 메소드 8점:
①생성자 메소드 이름은 클래스 이름과 동일합니다(php4 버전). php5 버전에서는 생성자 메소드 이름이 클래스와 동일할 수 있습니다. 또는 constructor()일 수도 있습니다
②생성자 메서드에는 반환 값이 없습니다
3생성자 메서드의 주요 기능은 새 개체의 초기화를 완료하는 것이지 객체 자체를 생성하는 것이 아닙니다.
4새 객체를 생성한 후 시스템은 자동으로 클래스의 생성자를 호출합니다.
⑤클래스에는 생성자가 하나만 있습니다. 와 클래스명()은 공존할 수 있으나 실제로는 하나만 사용할 수 있다.
⑥클래스에 대한 사용자 정의 생성자가 없는 경우 클래스는 시스템 기본 생성자를 사용합니다. */
7 생성자가 클래스에 맞게 사용자 정의되면 해당 클래스의 기본 생성자가 재정의됩니다.

8생성자의 기본 액세스 한정자는 public

2입니다. PHP 5에서 클래스는 동시에 두 가지 형태의 생성자를 가질 수 있습니다:
구성() 및 클래스 이름(), 둘 다 동시에 존재하는 경우 constructor()가 먼저 호출됩니다. 앞으로는 두 생성자를 사용하십시오.

publicfunction  construt(){//函数体;}      
publicfunction 类名(){//函数体;}

하나만 있을 수 있습니다. in PHP4 양식 생성자:

public
function 类名()
{
//函数体;
}

3. 생성자 방법Notes

:

(1) 생성자가 사용자 정의되면 이 때 객체를 생성할 때 기본 생성자를 덮어쓰게 됩니다. .
(2) 클래스는 하나의 생성자만 가질 수 있습니다(오버로드할 수 없음)

4 생성자 메서드 코드 예:

<?php
//屏蔽程序 notice 级错误  
error_reporting(E_ALL^E_NOTICE); 
//php面向对象编程之构造方法: 
class Person1{
       public $name;
       public $age;
}
$p1=new Person1();
//再给属性赋值
$p1->name="宋江";
$p1->age=33;
//this的理解:
class Person2
{
	public $name;
	public $age;
	//这个就是构造方法,php5独有
	public function construct($iname,$iage)
	{
		//这里如果我们直接用$name,$age,系统认为我们是创建了两个新的变量
		//$name=$iname;
		//$age=$iage;
		//此处的$this->name、$this->age则解决了以上问题,加上$this之后该变量就是指上面创建的成员属性;
		//$this 本质可以理解就是这个对象的地址,哪个对象传递时使用到$this, 就是传递哪个对象地址;
<span style="white-space:pre">		</span>//this就相当于传的是地址,把上面$name的地址传过来了而不是再新建一个$name变量
		//注意:$this只能在类中使用,不能在类外部使用.
		$this->name=$iname;
		$this->age=$iage;
		echo "执行构造方法<br/>";
	}  
}
$p1=new Person2("张清",90);
echo "我是".$p1->name."--我现在的年龄是".$p1->age."<br/>";
$p2=new Person2("宋江",33);
echo "我是".$p2->name."--我现在的年龄是".$p2->age."<br/>";

class Cat
{	
	//每一个类中必须有一个构造方法,若我们不定义,系统会自动生成
	//若不定义构造方法,则该类使用系统默认的构造方法,类中默认的构造方法如下:      
	function construt()
	{
		
	}      
}
$cat1=new Cat();
?>

위 내용은 PHP: 구축 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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