## 1、數據庫範式理解php
第一範式:每一個表應該有惟一標識每一行的主鍵。第二範式:在複合主鍵的狀況下,非主鍵部分不該該依賴於部分主鍵。nginx
第三範式:非主鍵之間不該該有依賴關係。數據庫
抽象類:segmentfault
定義爲抽象的類不能被實例化.任何一個類,若是它裏面至少有一個方法是被聲明爲抽象的,那麼這個類就必須被聲明爲抽象的。被定義爲抽象的方法只是聲明瞭其調用方式(參數),不能定義其具體的功能實現。繼承一個抽象類的時候,子類必須定義父類中的全部抽象方法;另外,這些方法的訪問控制必須和父類中同樣(或者更爲寬鬆)。例如某個抽象方法被聲明爲受保護的,那麼子類中實現的方法就應該聲明爲受保護的或者公有的,而不能定義爲私有的。此外方法的調用方式必須匹配,即類型和所需參數數量必須一致。例如,子類定義了一個可選參數,而父類抽象方法的聲明裏沒有,則二者的聲明並沒有衝突。 這也適用於 PHP 5.4 起的構造函數。在 PHP 5.4 以前的構造函數聲明能夠不同的.後端
接口:數組
使用接口(interface),能夠指定某個類必須實現哪些方法,但不須要定義這些方法的具體內容。服務器
接口是經過 interface 關鍵字來定義的,就像定義一個標準的類同樣,但其中定義全部的方法都是空的。函數
接口中定義的全部方法都必須是公有,這是接口的特性。php-fpm
要實現一個接口,使用 implements 操做符。類中必須實現接口中定義的全部方法,不然會報一個致命錯誤。類能夠實現多個接口,用逗號來分隔多個接口的名稱。性能
實現多個接口時,接口中的方法不能有重名。
接口也能夠繼承,經過使用extends操做符.
類要實現接口,必須使用和接口中所定義的方法徹底一致的方式。不然會致使致命錯誤.
區別:
1.對接口的繼承使用implements,抽象類使用extends.
2.接口中不能夠聲明變量,但能夠聲明類常量.抽象類中能夠聲明各類變量
3.接口沒有構造函數,抽象類能夠有
4.接口中的方法默認爲public,抽象類中的方法能夠用public,protected,private修飾
5.一個類能夠繼承多個接口,但只能繼承一個抽象類
PHP7的新特性主要有:標量類型聲明、返回值類型聲明、null合併運算符、太空船操做符、經過define()定義常量數組、匿名類等。
咱們知道Nginx (engine x)是一個高性能的HTTP和反向代理服務,也是一個IMAP/POP3/SMTP服務器。而Php-fpm是FastCGI的實現,並提供了進程管理的功能。由於Nginx不僅有處理http請求的功能,還能作反向代理;因此Nginx經過反向代理功能將動態請求轉向後端Php-fpm。
nginx與php-fpm詳解