백엔드 개발 PHP 튜토리얼 第三节--定义一个类_PHP教程

第三节--定义一个类_PHP教程

Jul 21, 2016 pm 04:00 PM
정의 친절한

+-------------------------------------------------------------------------------+
| = 本文为Haohappy读> 
| = 中Classes and Objects一章的笔记 
| = 翻译为主+个人心得 
| = 为避免可能发生的不必要的麻烦请勿转载,谢谢 
| = 欢迎批评指正,希望和所有PHP爱好者共同进步! 
| = PHP5研究中心: http://blog.csdn.net/haohappy2004
+-------------------------------------------------------------------------------+
*/

第三节--定义一个类

当你声明一个类,你需要列出对象应有的所有变量和所有函数—被称为属性和方法. 3.1.1中显示了一个类的构成. 注意在大括号({})内你只能声明变量或者函数. 3.1.2中显示了如何在一个类中定义三个属性和两个方法.

3.1.1 

复制代码 代码如下:
class Name extends Another Class  
{  
   Access Variable Declaration  
   Access Function Declaration  




3.1.2

复制代码 代码如下:
   //定义一个跟踪用户的类  
   class User  
   {  
       //属性  
       public $name;  
       private $password, $lastLogin;  

       //方法  
       public function __construct($name, $password)  
       {  
           $this->name = $name;  
           $this->password = $password;  
           $this->lastLogin = time();  
           $this->accesses++;  
       }  

       // 获取最后访问的时间  
       function getLastLogin()  
       {  
           return(date("M d Y", $this->lastLogin));  
       }  
   }  

   //创建一个对象的实例  
   $user = new User("Leon", "sdf123");  

   //获取最后访问的时间  
   print($user->getLastLogin() ."
\n");  

   //打印用户名  
   print("$user->name
\n");  
?>  



当你声明属性,你不需要指明数据类型. 变量可能是整型,字符串或者是另一个对象,这取决于实际情况.在声明属性时增加注释是一个好主意,标记上属性的含义和数据类型.

当你声明一个方法,你所做的和在类外部定义一个函数是一样的. 方法和属性都有各自的命名空间. 这意味着你可以安全地建立一个与类外部函数同名的方法,两者不会冲突. 例如,一个类中可以定义一个名为date()的方法. 但是你不能将一个方法命名为PHP的关键字,如for或者while.

类方法可能包含PHP中所谓的type hint. Type hint 是另一个传递参数给方法的类的名字. 如果你的脚本调用方法并传递一个不是类的实例的变量,PHP将产生一个”致命(fatal)错误” . 你可能没有给其它类型给出type hint,就像整型,字符串,或者布尔值. 在书写的时候, type hint是否应当包含数组类型仍存在争议.

Type hint是测试函数参数或者运算符的实例的数据类型的捷径. 你可能总是返回这个方法. 确认你强制让一个参数必须是哪种数据类型,如整型. 3.2.1 确保编译类只产生Widget的实例.

3.2.1

复制代码 代码如下:
   //组件  
   class Widget  
   {  
       public $name='none';  
       public $created=FALSE;  
   }  

   //装配器  
   class Assembler  
   {  
       public function make(Widget $w)  
       {  
           print("Making $w->name
\n");  
           $w->created=TRUE;  
       }  
   }  

   //建立一个组件对象  
   $thing = new Widget;  
   $thing->name = 'Gadget';  

   //装配组件  
   Assembler::make($thing);  
?> 





除了传递参数的变量外,方法含有一个特殊的变量. 它代表类的个别实例. 你应当用这个来指向对象的属性和其它方法.一些面向对象的语言假设一个不合格的变量提交给本地属性,但在PHP中方法的任何变量只是在方法的一定范围内. 注意在User类的构造函数中这个变量的使用(3.1.2).

PHP在属性和方法声明前定义一个访问限定语,如public,private和protected. 另外,你可以用”static”来标记一个成员. 你也可以在类中声明常量. 本章稍后会有不同访问方式的相关讨论.

你可以在一行中列出相同访问方式的几个属性,用逗号来分隔它们. 在3.1.2中,User类有两个private属性--$password和$lastLogin. 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/316958.htmlTechArticle+-------------------------------------------------------------------------------+ |=本文为Haohappy读CorePHPProgramming |=中ClassesandObjects一章的笔记 |=翻译为主+个人心...
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

iOS 17: 대기 모드에서 iPhone 시계 스타일을 변경하는 방법 iOS 17: 대기 모드에서 iPhone 시계 스타일을 변경하는 방법 Sep 10, 2023 pm 09:21 PM

대기는 iPhone이 충전기에 연결되어 있고 가로(또는 가로) 방향일 때 활성화되는 잠금 화면 모드입니다. 세 가지 화면으로 구성되어 있으며 그 중 하나는 전체 화면 시간으로 표시됩니다. 시계 스타일을 변경하는 방법을 알아보려면 계속 읽어보세요. StandBy의 세 번째 화면에는 수직으로 스와이프할 수 있는 다양한 테마의 시간과 날짜가 표시됩니다. 일부 테마에는 온도나 다음 알람과 같은 추가 정보도 표시됩니다. 시계를 길게 누르면 디지털, 아날로그, 세계, 태양광, 플로팅 등 다양한 테마 간에 전환할 수 있습니다. Float는 사용자 정의 가능한 색상의 큰 거품 숫자로 시간을 표시하고, Solar는 다양한 색상의 태양 플레어 디자인을 갖춘 보다 표준적인 글꼴을 가지며, World는 강조 표시하여 세계를 표시합니다.

디스커스란 무엇인가요? Discuz의 정의 및 기능 소개 디스커스란 무엇인가요? Discuz의 정의 및 기능 소개 Mar 03, 2024 am 10:33 AM

"Discovering Discuz: 정의, 기능 및 코드 예제" 인터넷의 급속한 발전과 함께 커뮤니티 포럼은 사람들이 정보를 얻고 의견을 교환하는 중요한 플랫폼이 되었습니다. 많은 커뮤니티 포럼 시스템 중에서 중국의 잘 알려진 오픈 소스 포럼 소프트웨어인 Discuz는 대다수의 웹 사이트 개발자 및 관리자가 선호합니다. 그렇다면 Discuz는 무엇입니까? 어떤 기능이 있으며 웹사이트에 어떻게 도움이 됩니까? 이 기사에서는 Discuz를 자세히 소개하고 독자가 이에 대해 더 자세히 알아볼 수 있도록 구체적인 코드 예제를 첨부합니다.

MySQL 복합 기본 키의 정의 및 기능 MySQL 복합 기본 키의 정의 및 기능 Mar 15, 2024 pm 05:18 PM

MySQL의 복합 기본 키는 테이블의 여러 필드로 구성된 기본 키를 말하며 각 레코드를 고유하게 식별하는 데 사용됩니다. 단일 기본 키와 달리 복합 기본 키는 여러 필드의 값을 결합하여 형성됩니다. 테이블을 생성할 때 여러 필드를 기본 키로 지정하여 복합 기본 키를 정의할 수 있습니다. 복합 기본 키의 정의와 기능을 보여주기 위해 먼저 id, 사용자 이름, 이메일이라는 세 가지 필드가 포함된 users라는 테이블을 만듭니다. 여기서 id는 자동으로 증가하는 기본 키이고 user입니다.

Microsoft Word에서 사용자 정의 테두리를 만드는 방법 Microsoft Word에서 사용자 정의 테두리를 만드는 방법 Nov 18, 2023 pm 11:17 PM

학교 프로젝트의 첫 페이지를 흥미진진하게 만들고 싶으십니까? 통합 문서 홈페이지에 멋지고 우아한 테두리를 추가하는 것만큼 다른 제출물보다 눈에 띄는 것은 없습니다. 그러나 Microsoft Word의 표준 한 줄 테두리는 매우 명확하고 지루해졌습니다. 따라서 Microsoft Word 문서에서 사용자 정의 테두리를 만들고 사용하는 단계를 보여줍니다. Microsoft Word에서 사용자 정의 테두리를 만드는 방법 사용자 정의 테두리를 만드는 것은 매우 쉽습니다. 그러나 경계가 필요합니다. 1단계 – 맞춤 테두리 다운로드 인터넷에는 수많은 무료 테두리가 있습니다. 우리는 이와 같은 테두리를 다운로드했습니다. 1단계 - 인터넷에서 맞춤 테두리를 검색합니다. 또는 클리핑으로 이동할 수 있습니다.

PHP의 명명 규칙: 클래스, 메소드 및 변수에 카멜 표기법을 사용하는 방법 PHP의 명명 규칙: 클래스, 메소드 및 변수에 카멜 표기법을 사용하는 방법 Jul 30, 2023 pm 02:43 PM

PHP의 명명 규칙: CamelCase 표기법을 사용하여 클래스, 메서드 및 변수의 이름을 지정하는 방법 PHP 프로그래밍에서 좋은 명명 규칙은 중요한 코딩 방법입니다. 코드 가독성과 유지 관리성이 향상되고 팀워크가 더욱 원활해집니다. 이 기사에서는 일반적인 명명 규칙인 camelCase를 살펴보고 이를 PHP에서 클래스, 메소드 및 변수 이름에 사용하는 방법에 대한 몇 가지 예를 제공합니다. 1. 카멜 케이스 명명법이란 무엇입니까? CamelCase는 각 단어의 첫 글자를 대문자로 표기하는 일반적인 명명 규칙입니다.

PHP 인터페이스 소개 및 정의 방법 PHP 인터페이스 소개 및 정의 방법 Mar 23, 2024 am 09:00 AM

PHP 인터페이스 소개 및 정의 방법 PHP는 웹 개발에 널리 사용되는 오픈 소스 스크립팅 언어입니다. 유연하고 간단하며 강력합니다. PHP에서 인터페이스는 여러 클래스 간의 공통 메서드를 정의하여 다형성을 달성하고 코드를 보다 유연하고 재사용 가능하게 만드는 도구입니다. 이 기사에서는 PHP 인터페이스의 개념과 이를 정의하는 방법을 소개하고 사용법을 보여주는 특정 코드 예제를 제공합니다. 1. PHP 인터페이스 개념 인터페이스는 클래스 애플리케이션을 정의하는 객체 지향 프로그래밍에서 중요한 역할을 합니다.

PHP 오류: 클래스를 반복적으로 선언할 수 없습니다. 해결 방법! PHP 오류: 클래스를 반복적으로 선언할 수 없습니다. 해결 방법! Aug 25, 2023 pm 04:13 PM

PHP 오류: 클래스를 반복적으로 선언할 수 없습니다. 해결 방법! 개발자가 문제에 직면하는 것은 흔한 일입니다. PHP 개발에서는 클래스를 반복적으로 선언할 수 없다는 일반적인 오류가 자주 발생합니다. 이 문제는 간단해 보이지만 시간 내에 해결하지 않으면 코드가 올바르게 실행되지 않습니다. 이 문서에서는 이 문제의 원인을 설명하고 참조할 수 있는 해결 방법을 제공합니다. PHP 코드에서 클래스를 정의할 때, 같은 파일 또는 여러 파일에 같은 클래스를 여러 번 정의하면 해당 클래스를 반복적으로 선언할 수 없다는 오류가 발생합니다. 이것은

전폭 문자의 정의 및 사용 전폭 문자의 정의 및 사용 Mar 25, 2024 pm 03:33 PM

전각 문자란 무엇입니까? 컴퓨터 인코딩 시스템에서 이중 너비 문자는 두 개의 표준 문자 위치를 차지하는 문자 인코딩 방법입니다. 이에 표준 문자 위치를 차지하는 문자 인코딩 방식을 반각문자라 한다. 전자 문자는 일반적으로 중국어, 일본어, 한국어 및 기타 아시아 문자의 입력, 표시 및 인쇄에 사용됩니다. 중국어 입력 방법과 텍스트 편집에서는 전자와 반각 문자의 사용 시나리오가 다릅니다. 전각문자 사용 중국어 입력방법 : 중국어 입력방법에서는 한자, 기호 등의 한자를 입력할 때 일반적으로 전각문자를 사용한다.

See all articles