乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      php基礎(chǔ)

       井梅 2018-09-25

      一、PHP類型:

      1.         標(biāo)量:boolean integer float string

      2.         復(fù)合:array object callable

      3.         特殊:resource null

      二、預(yù)定義變量:

      1.         超全局變量:

      1)         $GLOBALS:引用全局作用域中可用的全部變量

      2)         $_SERVER:服務(wù)器和執(zhí)行環(huán)境信息

      a)         $_SERVER['SERVER_ADDR']:服務(wù)器ip地址

      b)         $_SERVER['SERVER_NAME']:服務(wù)器主機(jī)名

      c)         $_SERVER['SERVER_SOFTWARE']:服務(wù)器標(biāo)識(shí)字符串

      d)         $_SERVER['SERVER_PROTOCOL']:請(qǐng)求頁面時(shí)通信協(xié)議的名稱及版本

      e)         $_SERVER['REMOTE_ADDR']:瀏覽當(dāng)前頁面用戶ip地址

      f)          $_SERVER['REMOTE_HOST']:瀏覽當(dāng)前頁面用戶主機(jī)名

      3)         $_GET

      4)         $_POST

      5)         $_FILE

      6)         $_COOKIE

      7)         $_SESSION

      8)         $_REQUEST$_GET、$_POST、$_COOKIE

      9)         $_ENV:環(huán)境變量

      10)     $php_errormsg:前一個(gè)錯(cuò)誤信息

      三、常量:

      1.         常量只包含標(biāo)量數(shù)據(jù)

      2.         常量不可取消或重新定義

      3.         常量可在任何地方定義和訪問

      4.         常量相關(guān)函數(shù):

      1)         define()|const:定義常量

      2)         constant():獲取常量的值

      3)         get_defined_constants():獲取常量列表

      4)         defined():判斷是否定義該常量

      5.         預(yù)定義常量:

      1)         E_ERROR

      2)         E_WARNING

      3)         ..

      4)         TRUE

      5)         FALSE

      6)         NULL

      6.         魔術(shù)常量:

      1)         __LINE__:當(dāng)前行號(hào)

      2)         __FILE__:文件完整路徑和文件名

      3)         __DIR__:文件所在的目錄

      4)         __FUNCTION__:函數(shù)名稱

      5)         __CLASS__:類的名稱

      6)         __TRAIT__Trait 的名字

      7)         __METHOD__:類的方法名

      8)         __NAMESPACE__:當(dāng)前命名空間的名稱

      四、類與對(duì)象

      1.         屬性

      2.         類常量 const NAME='apple';

      3.         類自動(dòng)加載

      1)         spl_autoload_register()  注冊(cè)任意數(shù)量的自動(dòng)加載器

      spl_autoload_register(function ($class_name) {

      require_once $class_name . '.php';

      });

      4.         構(gòu)造函數(shù)和析構(gòu)函數(shù)

      1)         __construct():構(gòu)造函數(shù)

      2)         __destruct():析構(gòu)函數(shù)

      5.         訪問控制:public private protected

      6.         對(duì)象繼承:extends

      7.         范圍解析符: ::用于訪問靜態(tài)成員、類常量、覆蓋類中的屬性和方法

      8.         static:靜態(tài)關(guān)鍵字 不可用->操作符訪問 必需用::訪問

      9.         抽象類:abstract

      1)         抽象類不能被實(shí)例化

      2)         類中有一個(gè)方法被聲明為抽象的就必須聲明為抽象類

      3)         繼承一個(gè)抽象類的時(shí)候,子類必須定義父類中的所有抽象方法

      4)         方法的訪問控制必須和父類中一樣(或者更為寬松)

      5)         方法的調(diào)用方式必須匹配,即類型和所需參數(shù)數(shù)量必須一致

      6)         強(qiáng)制子類定義父類中的抽象方法

      7)         抽象方法僅需要定義需要的參數(shù)

      10.     對(duì)象接口:interface(聲明接口) 聲明的時(shí)候接口中的方法可定義方法名和參數(shù),函數(shù)體都為空

      1)         實(shí)現(xiàn):implements 實(shí)現(xiàn)的時(shí)候,用類的方法實(shí)現(xiàn)相應(yīng)接口方法中的方法

      // 聲明一個(gè)'iTemplate'接口

      interface iTemplate

      {

      public function setVariable($name, $var);

      public function getHtml($template);

      }

      // 實(shí)現(xiàn)接口

      class Template implements iTemplate

      {

      private $vars = array();

       

      public function setVariable($name, $var)

      {

      $this->vars[$name] = $var;

      }

      //沒有getHtml方法的話是不對(duì)的,實(shí)現(xiàn)接口的類必須包含所有接口中的方法

      public function getHtml($template)

      {

      foreach($this->vars as $name => $value) {

      $template = str_replace('{' . $name . '}', $value, $template);

      }

       

      return $template;

      }

      }

      2)         繼承:extends 可繼承多個(gè)接口

      //trait:代碼復(fù)用

      <?php

      trait ezcReflectionReturnInfo {

      function getReturnType() { /*1*/ }

      function getReturnDescription() { /*2*/ }

      }

       

      class ezcReflectionMethod extends ReflectionMethod {

      use ezcReflectionReturnInfo;

      /* ... */

      }

       

      class ezcReflectionFunction extends ReflectionFunction {

      use ezcReflectionReturnInfo;

      /* ... */

      }

      ?>

      11.     魔術(shù)方法

      1)         __construct()  構(gòu)造

      2)         __destruct()   析構(gòu)

      3)         __call()       在對(duì)象中調(diào)用一個(gè)不可訪問方法時(shí),__call() 會(huì)被調(diào)用。

      4)         __callStatic() 在靜態(tài)上下文中調(diào)用一個(gè)不可訪問方法時(shí),__callStatic() 會(huì)被調(diào)用

      5)         __get()        讀取不可訪問屬性的值時(shí),__get() 會(huì)被調(diào)用

      6)         __set()        在給不可訪問屬性賦值時(shí),__set() 會(huì)被調(diào)用。

      7)         __isset()      當(dāng)對(duì)不可訪問屬性調(diào)用 isset() empty() 時(shí),__isset() 會(huì)被調(diào)用。

      8)         __unset()      當(dāng)對(duì)不可訪問屬性調(diào)用 unset() 時(shí),__unset() 會(huì)被調(diào)用。

      9)         __sleep()

      a)         serialize() 函數(shù)會(huì)檢查類中是否存在一個(gè)魔術(shù)方法 __sleep()。

      b)         如果存在,該方法會(huì)先被調(diào)用,然后才執(zhí)行序列化操作。

      c)         此功能可以用于清理對(duì)象,并返回一個(gè)包含對(duì)象中所有應(yīng)被序列化的變量名稱的數(shù)組。

      d)         如果該方法未返回任何內(nèi)容,則 NULL 被序列化,并產(chǎn)生一個(gè) E_NOTICE 級(jí)別的錯(cuò)誤。

      10)     __wakeup()

      a)         unserialize() 會(huì)檢查是否存在一個(gè) __wakeup() 方法。

      b)         如果存在,則會(huì)先調(diào)用 __wakeup 方法,預(yù)先準(zhǔn)備對(duì)象需要的資源。

      11)     __toString()   用于一個(gè)類被當(dāng)成字符串時(shí)應(yīng)怎樣回應(yīng)

      12)     __invoke()     當(dāng)嘗試以調(diào)用函數(shù)的方式調(diào)用一個(gè)對(duì)象時(shí),__invoke() 方法會(huì)被自動(dòng)調(diào)用

      13)     __set_state()  當(dāng)調(diào)用 var_export() 導(dǎo)出類時(shí),此靜態(tài) 方法會(huì)被調(diào)用

      14)     __clone()

      a)         當(dāng)復(fù)制完成時(shí),如果定義了 __clone() 方法,

      b)         則新創(chuàng)建的對(duì)象(復(fù)制生成的對(duì)象)中的 __clone() 方法會(huì)被調(diào)用,

      c)         可用于修改屬性的值(如果有必要的話)

      15)     __debugInfo()

      12.     final關(guān)鍵字:如果父類中的方法被聲明為 final,則子類無法覆蓋該方法。如果一個(gè)類被聲明為 final,則不能被繼承。

      13.     對(duì)象比較:=====

      14.     對(duì)象復(fù)制:__clone

      15.     類型約束:函數(shù)的參數(shù)可以指定必須為對(duì)象(在函數(shù)原型里面指定類的名字),接口,NULL,數(shù)組或者callable

      16.     后期靜態(tài)綁定:static::who()

      1)         static:: 不再被解析為定義當(dāng)前方法所在的類,而是在實(shí)際運(yùn)行時(shí)計(jì)算的

      17.     對(duì)象序列化:

      1)         serialize()

      2)         unserialize()

      18.     命名空間:

      1)         namespace關(guān)鍵字  顯式訪問當(dāng)前命名空間或子命名空間中的元素 等價(jià)于類中的 self 操作符

      2)         __NAMESPACE__    包含當(dāng)前命名空間名稱的字符串

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多