> php教程 > php手册 > 본문

PHP 시작부터 series-03.php 기능과 객체지향 포기까지

WBOY
풀어 주다: 2016-08-10 08:49:35
원래의
1360명이 탐색했습니다.

php 시작부터 시리즈-03.php 기능과 객체지향 포기까지

1. 기능

PHP의 진정한 힘은 1000가지의 내장 함수에서 나옵니다. PHP 참조 매뉴얼을 참조하세요.

사용자 정의 기능:

<span style="color: #008080;">1</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> functionName()
</span><span style="color: #008080;">2</span> <span style="color: #000000;">{
</span><span style="color: #008080;">3</span> <span style="color: #000000;">要执行的代码;
</span><span style="color: #008080;">4</span> }
로그인 후 복사

함수 명명 지침:

  • 함수 이름은 해당 기능을 나타내야 합니다
  • 함수 이름은 문자 또는 밑줄로 시작합니다(숫자로 시작할 수 없음)

2. 객체지향

1. 기본 클래스 구문:

<span style="color: #008080;"> 1</span> <?<span style="color: #000000;">php
</span><span style="color: #008080;"> 2</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> Site {
</span><span style="color: #008080;"> 3</span>   <span style="color: #008000;">/*</span><span style="color: #008000;"> 成员变量 </span><span style="color: #008000;">*/</span>
<span style="color: #008080;"> 4</span>   <span style="color: #0000ff;">var</span> <span style="color: #800080;">$url</span><span style="color: #000000;">;
</span><span style="color: #008080;"> 5</span>   <span style="color: #0000ff;">var</span> <span style="color: #800080;">$title</span><span style="color: #000000;">;
</span><span style="color: #008080;"> 6</span>   
<span style="color: #008080;"> 7</span>   <span style="color: #008000;">/*</span><span style="color: #008000;"> 成员函数 </span><span style="color: #008000;">*/</span>
<span style="color: #008080;"> 8</span>   <span style="color: #0000ff;">function</span> setUrl(<span style="color: #800080;">$par</span><span style="color: #000000;">){
</span><span style="color: #008080;"> 9</span>      <span style="color: #800080;">$this</span>->url = <span style="color: #800080;">$par</span><span style="color: #000000;">;
</span><span style="color: #008080;">10</span> <span style="color: #000000;">  }
</span><span style="color: #008080;">11</span>   
<span style="color: #008080;">12</span>   <span style="color: #0000ff;">function</span><span style="color: #000000;"> getUrl(){
</span><span style="color: #008080;">13</span>      <span style="color: #0000ff;">echo</span> <span style="color: #800080;">$this</span>->url . <span style="color: #ff00ff;">PHP_EOL</span><span style="color: #000000;">;
</span><span style="color: #008080;">14</span> <span style="color: #000000;">  }
</span><span style="color: #008080;">15</span>   
<span style="color: #008080;">16</span>   <span style="color: #0000ff;">function</span> setTitle(<span style="color: #800080;">$par</span><span style="color: #000000;">){
</span><span style="color: #008080;">17</span>      <span style="color: #800080;">$this</span>->title = <span style="color: #800080;">$par</span><span style="color: #000000;">;
</span><span style="color: #008080;">18</span> <span style="color: #000000;">  }
</span><span style="color: #008080;">19</span>   
<span style="color: #008080;">20</span>   <span style="color: #0000ff;">function</span><span style="color: #000000;"> getTitle(){
</span><span style="color: #008080;">21</span>      <span style="color: #0000ff;">echo</span> <span style="color: #800080;">$this</span>->title . <span style="color: #ff00ff;">PHP_EOL</span><span style="color: #000000;">;
</span><span style="color: #008080;">22</span> <span style="color: #000000;">  }
</span><span style="color: #008080;">23</span> <span style="color: #000000;">}
</span><span style="color: #008080;">24</span> ?>
로그인 후 복사

분석은 다음과 같습니다.

  • 클래스는 class 키워드와 클래스 이름 정의를 사용합니다.

  • 변수와 메서드는 클래스 이름 뒤의 중괄호({}) 안에 정의할 수 있습니다.

  • 클래스의 변수는 var을 사용하여 선언하며, 변수도 값으로 초기화할 수 있습니다.

  • 함수 정의는 PHP 함수 정의와 유사하지만 함수는 클래스와 클래스가 인스턴스화하는 개체를 통해서만 액세스할 수 있습니다.

  • $this는 자체 개체를 나타내며 더 이상 -> 액세스를 사용하여 개체 구성원에 액세스합니다.
  • PHP_EOL은 개행 문자입니다

 2. 객체 생성

클래스가 생성된 후 new 연산자를 사용하여 클래스의 개체를 인스턴스화할 수 있습니다. 더 이상 -> 액세스를 사용하여 개체 멤버에 액세스하면 새 사이트를 사용하여 호출할 수 있습니다. 매개변수 없음 생성자, 괄호 없이 가능 :

<span style="color: #008080;">1</span> <span style="color: #800080;">$runoob</span> = <span style="color: #0000ff;">new</span><span style="color: #000000;"> Site;
</span><span style="color: #008080;">2</span> <span style="color: #800080;">$taobao</span> = <span style="color: #0000ff;">new</span><span style="color: #000000;"> Site;
</span><span style="color: #008080;">3</span> <span style="color: #800080;">$google</span> = <span style="color: #0000ff;">new</span> Site;
로그인 후 복사
<span style="color: #008080;">1</span> <span style="color: #800080;">$runoob</span>->setTitle( "菜鸟教程" );
로그인 후 복사

 3. 생성자

_construct를 사용하여 생성자 이름 지정

<span style="color: #008080;">1</span> <span style="color: #0000ff;">function</span> __construct( <span style="color: #800080;">$par1</span>, <span style="color: #800080;">$par2</span><span style="color: #000000;"> ) {
</span><span style="color: #008080;">2</span>    <span style="color: #800080;">$this</span>->url = <span style="color: #800080;">$par1</span><span style="color: #000000;">;
</span><span style="color: #008080;">3</span>    <span style="color: #800080;">$this</span>->title = <span style="color: #800080;">$par2</span><span style="color: #000000;">;
</span><span style="color: #008080;">4</span> }
로그인 후 복사

4. 소멸자

생성자와 달리 객체의 수명이 끝나면(예: 객체가 위치한 함수가 호출된 경우) 시스템이 자동으로 소멸자를 실행합니다.

<span style="color: #008080;"> 1</span> <?<span style="color: #000000;">php
</span><span style="color: #008080;"> 2</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> MyDestructableClass {
</span><span style="color: #008080;"> 3</span>    <span style="color: #0000ff;">function</span><span style="color: #000000;"> __construct() {
</span><span style="color: #008080;"> 4</span>        <span style="color: #0000ff;">print</span> "构造函数\n"<span style="color: #000000;">;
</span><span style="color: #008080;"> 5</span>        <span style="color: #800080;">$this</span>->name = "MyDestructableClass"<span style="color: #000000;">;
</span><span style="color: #008080;"> 6</span> <span style="color: #000000;">   }
</span><span style="color: #008080;"> 7</span> 
<span style="color: #008080;"> 8</span>    <span style="color: #0000ff;">function</span><span style="color: #000000;"> __destruct() {
</span><span style="color: #008080;"> 9</span>        <span style="color: #0000ff;">print</span> "销毁 " . <span style="color: #800080;">$this</span>->name . "\n"<span style="color: #000000;">;
</span><span style="color: #008080;">10</span> <span style="color: #000000;">   }
</span><span style="color: #008080;">11</span> <span style="color: #000000;">}
</span><span style="color: #008080;">12</span> 
<span style="color: #008080;">13</span> <span style="color: #800080;">$obj</span> = <span style="color: #0000ff;">new</span><span style="color: #000000;"> MyDestructableClass();
</span><span style="color: #008080;">14</span> ?>
로그인 후 복사

실행 결과는 다음과 같습니다.

<span style="color: #000000;">构造函数
销毁 MyDestructableClass</span>
로그인 후 복사

5. 상속

단일 루트 상속, 상속은 extends 키워드를 사용하고 구현 인터페이스는 implements

를 사용합니다.

3.결론

좋습니다. PHP 함수와 객체 학습을 마쳤습니다. 이 튜토리얼은 빠른 학습 튜토리얼이며 일부 문법적 핵심 사항과 특별하고 다양한 사항에만 초점을 맞추고 있습니다.

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